Esta es el arreglo más válida que te podemos aportar, pero obsérvala detenidamente y analiza si se puede adaptar a tu trabajo.
Solución:
Mientras tanto, encontré la solución perfecta (para mí): nexe, que crea un único ejecutable a partir de una aplicación Node.js que incluye todos sus módulos.
Es lo más parecido a una solución ideal.
Primero, estamos hablando de empaquetar una aplicación Node.js para talleres, demostraciones, etc., donde puede ser útil tener una aplicación “simplemente ejecutándose” sin la necesidad de que el usuario final se preocupe por la instalación y las dependencias.
Puedes probar la siguiente configuración:
- Obtenga el código fuente de sus aplicaciones
npm install
todas las dependencias (a través de package.json) al local directorio node_modules. Es importante realizar este paso en cada plataforma que desee admitir por separado, en caso de dependencias binarias.- Copie el binario de Node.js – nodo.exe en Windows, (probablemente) /usr/local/bin/nodo en OS X/Linux a la carpeta raíz de su proyecto. En OS X/Linux puede encontrar la ubicación del binario Node.js con
which node
.
Para ventanas:
Cree un archivo autoextraíble, 7zip_extra admite una forma de ejecutar un comando justo después de la extracción, consulte: http://www.msfn.org/board/topic/39048-how-to-make-a-7-zip-switchless- instalador/.
Para OS X/Linux:
Puede usar herramientas como makeself o unzipsfx (no sé si está compilado con CHEAP_SFX_AUTORUN definido por defecto).
Estas herramientas extraerán el archivo a un directorio temporal, ejecutarán el comando dado (p. ej. node app.js
) y elimine todos los archivos cuando termine.
No es por ganar un caballo muerto, pero la solución que está describiendo se parece mucho a Node-Webkit.
Desde la página de Git:
node-webkit es un entorno de ejecución de aplicaciones basado en Chromium y node.js. Puede escribir aplicaciones nativas en HTML y JavaScript con node-webkit. También le permite llamar a los módulos de Node.js directamente desde el DOM y habilita una nueva forma de escribir aplicaciones nativas con todas las tecnologías web.
Estas instrucciones detallan específicamente la creación de una aplicación de un solo archivo que un usuario puede ejecutar, y esta parte describe las dependencias externas.
No estoy seguro de si es la solución exacta, pero parece bastante cerca.
¡Espero eso ayude!
Comentarios y valoraciones de la guía
Recuerda comunicar esta división si te ayudó.