Ho diverse app nel nodo che condividono tutti i moduli che ho scritto. Questi moduli non sono disponibili tramite npm. Mi piacerebbe essere in grado di condividere liberamente tra le app, ma non voglio copiare le directory, né affidarmi a Git per farlo. E non sono molto bravo nell'usare i link simbolici per fare questo.Come condividere il codice tra le app node.js?
Vorrei organizzare le directory di qualcosa di simile:
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)
Il problema che sto vedendo è che i moduli in shared_lib sembrano confondersi su dove trovare i moduli che saranno nelle node_modules directory di qualsiasi app in cui sono in esecuzione. Almeno penso che questo sia il problema.
Quindi .... qual è un buon modo per fare ciò che evita di avere duplicati di file? (nota che non mi importa di duplicati di cose in node_modules, dal momento che quelli non sono il mio codice, non li controllo in Git, ecc.)
Quando ho provato questo, non è stato possibile risolvere alcun modulo richiesto dai moduli condivisi. Nella tua struttura, sembra che la cartella node_modules più alta abbia sia moduli privati (controllati nel controllo del codice sorgente) che pubblici (npm install'd - non registrati). Non cerco normalmente di controllare i moduli pubblici nel controllo del codice sorgente: come hai risolto questo problema? –