안녕하세요

[GCP] babel-node doesn't work with type: module. 본문

유튜브컨텐츠탐색-StelLife/Google App Engine

[GCP] babel-node doesn't work with type: module.

sakuraop 2023. 2. 21. 16:56

https://github.com/babel/babel/issues/11108

 

Babel-node not working with "type": "module" in package.json · Issue #11108 · babel/babel

I have the following script that I'm running with npx babel-node script.js let a = 0; let b = 1; console.log(a ?? b); It executes fine with my babel config { "plugins": ["@babel/...

github.com

type: module을 사용할 경우 type: module 사용은 호환이 되지 않는다.

 

https://yamoo9.gitbook.io/webpack/babel/babel-node

 

Babel 노드 (Node.js) ✘ - Webpack 러닝 가이드

package.json 파일 설정을 통해 전체 파일에 적용하는 방법으로 모든 파일의 확장자를 일일이 mjs로 바꾸지 않고, 프로젝트 전체에 ES 모듈을 적용하고 싶을 때 적합한 방법입니다.

yamoo9.gitbook.io

 

 

 

Updating service [default] (this may take several minutes)...failed.
ERROR: (gcloud.app.deploy) Error Response: [9] An internal error occurred while processing task /app-engine-flex/flex_await_healthy/flex_await_healthy>2023-02-21T08:33:11.345Z61.fc.1:
> backend@1.0.0 start /app
> node server.js

(node:18) ExperimentalWarning: The ESM module loader is experimental.
file:///app/node_modules/axios/lib/adapters/http.js:7
import {getProxyForUrl} from 'proxy-from-env';
        ^^^^^^^^^^^^^^
SyntaxError: The requested module 'proxy-from-env' is expected to be of type CommonJS, which does not support named exports. CommonJS modules can be imported by importing the default export.
For example:
import pkg from 'proxy-from-env';
const {getProxyForUrl} = pkg;


type:module 은 GCP와 호환이 안되는 것 같습니다.

es6 모듈시스템 쓰지 말고, 그냥 commonJS로 작성하도록 해야겠습니다.

When you are using {"type":"module"} in your project, you may use transcompiler like "Babel" to make your project compatible with GCP.

I couldn't successfully deploy with babel-node as in the above URL.

I recommend you to use "CommonJS" in your project to ensure compatibility with the GCP environment.