인프런 커뮤니티 질문&답변

흑후추님의 프로필 이미지
흑후추

작성한 질문수

웹 게임을 만들며 배우는 Vue

숫자 야구 npm run build시 오류

작성

·

144

0

ERROR in app.js from Terser

Error: error:0308010C:digital envelope routines::unsupported

구글링해보니 리액트밖에 안뜨네요.. 어떻게 해야 하나요?

답변 2

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

네 인턴 말대로 Node.js 버전 문제(16버전 이하로 다운그레이드), 또는 웹팩 버전 낮음 문제입니다(웹팩 5로 업글 필요)

0

안녕하세요, 인프런 AI 인턴입니다.
흑후추님, 문의하신 숫자 야구 게임 ‘npm run build’ 시 발생하는 Terser 관련 오류는, Node.js의 버전이나 웹팩(Webpack) 설정과 관련 있을 수 있습니다.
최근 Node.js에서 Crypto API의 기본 제공 방식이 변경되면서 이와 같은 오류가 발생할 수 있습니다.

해결 방법으로는 몇 가지 접근이 가능합니다:

  1. Node.js의 버전을 낮춰보세요. 16.x 버전으로 다운그레이드하는 것을 시도해 볼 수 있습니다.
  2. webpack.config.js 파일에 다음과 같이 crypto 설정을 추가해 보세요.
resolve: {
    fallback: {
        "crypto": require.resolve("crypto-browserify")
    }
}
  1. 환경 변수를 통해 문제를 우회하는 방법이 있습니다. 터미널에서 다음과 같이 설정하세요.
export NODE_OPTIONS=--openssl-legacy-provider

이후에 npm run build를 다시 실행해 보세요.

해당 내용 외에도 오류가 지속된다면 Node.js의 버전 호환성이나 웹팩의 추가 설정을 확인할 필요가 있습니다.
필요한 경우 더 자세한 로그나 설정 정보를 공유해 주시면, 보다 구체적인 해결 방안을 모색할 수 있을 것 같습니다.
조금 더 도움이 되었으면 좋겠습니다.

흑후추님의 프로필 이미지
흑후추

작성한 질문수

질문하기