Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

199
Visualizações
La variable NPM npm_package_main siempre está vacía

Problema

La variable NPM $npm_package_main siempre está vacía.

  1. Cuando configuro el archivo package.json con "main": "index.js"
  2. Establezca la propiedad "inicio" de los scripts en "start": "node $npm_package_main"
  3. Luego ejecute npm start

Problema : la CLI ejecuta el modo Node REPL, ignorando la variable "principal" de package.json.

Comportamiento esperado : ejecute el comando como node index.js .

Medioambiente

  • LinuxUbuntu 20.04.1
  • npm -v = 7.3.0
  • node -v = v15.5.0
  • npm run env | grep npm_package_name = npm_package_name=app
  • npm run env | grep npm_package_main = VACÍO

como reproducir

  • Cree un directorio de "aplicación" e ingrese el nuevo directorio
  • Cree un archivo "index.js" con el siguiente contenido console.log('HELLO');
  • Ejecute npm init y presione ENTER para todas las preguntas
  • Edite el archivo package.json y agregue la siguiente línea a la propiedad "scripts": "start": "node $npm_package_main",
  • ahora su paquete.json debe verse así
 { "name": "app", "version": "1.0.0", "description": "", "main": "index.js", "devDependencies": {}, "scripts": { "start": "node $npm_package_main", "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC" }
  • Ejecute "inicio npm"
  • El archivo "index.js" no se ejecuta y Node ingresa al modo REPL.

intentos

Establezca "inicio" y ejecute "npm start" para:

  • "echo $npm_package_main" no imprime nada
  • "echo $npm_package_name" imprime "aplicación"
  • "echo $npm_package_version" imprime "1.0.0"

Referencias

  • Variables NPM package.json: https://docs.npmjs.com/cli/v7/using-npm/scripts
  • Problema de NPM Github: https://github.com/npm/cli/issues/2585
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

  • La respuesta oficial de NPM: use "nodo". No hay una razón oficial para este comportamiento, hasta esta publicación.

  • Según la documentación, la propiedad "principal" contiene el punto de entrada de su aplicación cuando se usa como módulo en otros proyectos:https://docs.npmjs.com/cli/v7/configuring-npm/package-json#main

Solución

  • Utilice la propiedad "config" en su lugar:
 { "name": "app", "version": "1.0.0", "description": "", "devDependencies": {}, "config": { "main": "index.js" }, "scripts": { "start": "node $npm_package_config_main", "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC" }
  • Ejecute "inicio npm"
  • Funciona

Referencias:

  • https://github.com/npm/cli/issues/2585
  • https://github.com/npm/cli/pull/2446
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda