Estoy tratando de hacer .exe desde mi proyecto nodejs. Estoy usando el comando pkg pero cuando pkg package.json en cmd, recibo este mensaje
> pkg@5.8.0 > Warning Babel parse has failed: This experimental syntax requires enabling the parser plugin: "importAssertions". (1:39) > Warning Cannot include directory %1 into executable. The directory must be distributed with executable as %2. %1: node_modules\puppeteer\.local-chromium %2: path-to-executable/puppeteer > Warning Cannot include directory %1 into executable. The directory must be distributed with executable as %2. %1: node_modules\puppeteer\.local-chromium %2: path-to-executable/puppeteer > Warning Failed to make bytecode node10-x64 for file`Estoy importando el archivo JSON con lo siguiente:
import config from "../../config.json" assert {type: "json"}Aquí está mi paquete.json: paquete.json
¿Estoy importando config.json de forma incorrecta? ¿Estoy empaquetando mi aplicación de forma incorrecta? ¿Estoy haciendo la forma incorrecta de hacer .exe?
De acuerdo, daré una respuesta para poder editarla y ser más completo que un comentario, aunque no puedo estar seguro de que esta sea la solución completa, definitivamente es parte de ella.
Debe instalar el complemento importAssertions Babel.
Puede hacerlo ejecutando esta línea en la línea cmd:
npm install --save-dev @babel/plugin-syntax-import-assertions
Además, tenga en cuenta que la import config from "../../config.json" assert {type: "json"} es experimental y aún no forma parte del estándar real. Es por eso que necesita instalar el complemento para usarlo. En lugar de lo que está haciendo, lo que recomendaría es simplemente modificar config.json para que sea config.js y crear el archivo js:
module.exports = { //whatever json was originally in the config file }Esto significaría que ya no necesitaría la sintaxis experimental y, a menos que sea realmente importante que el archivo de configuración sea un archivo json directo, sería más fácil. También significa que no tendrá que arreglar las cosas si/cuando esa sintaxis experimental cambie ligeramente.