Tengo varias aplicaciones en el nodo que todas comparten algunos módulos que he escrito. Estos módulos no están disponibles a través de npm. Me gustaría poder compartir libremente entre aplicaciones, pero no quiero copiar directorios, ni confiar en que Git lo haga. Y no soy muy bueno en el uso de enlaces simbólicos para hacer esto tampoco.¿Cómo compartir el código entre las aplicaciones node.js?
me gustaría organizar directorios algo como esto:
app1
server.js
node_modules
(public modules from npm needed for app1)
lib
(my own modules specific to app1)
app2
server.js
node_modules
(public modules from npm needed for app2)
lib
(my own modules specific to app2)
shared_lib
(my own modules that are used in both app1 and app2)
El problema que estoy viendo es que los módulos en shared_lib parecen confundirse en cuanto a dónde encontrar los módulos que estarán en las node_modules directorio de la aplicación en la que se están ejecutando. Al menos creo que ese es el problema.
Entonces .... ¿cuál es una buena manera de hacer esto que evita tener duplicados de archivos? (Tenga en cuenta que no me importan los duplicados de cosas en node_modules, ya que esos no son mi código, no los controlo en Git, etc.)
Cuando probé esto, los módulos requeridos por los módulos compartidos no se pudieron resolver. En su estructura, parece que la carpeta node_modules más alta tiene tanto módulos privados (controlados en el control de la fuente) como públicos (npm install'd - not checked in). Normalmente no verifico los módulos públicos en el control de la fuente, ¿cómo te salvaste con esto? –