2012-12-02 14 views
5

Ho un'applicazione che funziona correttamente localmente, quindi so che il codice funziona. Tuttavia, quando vado a distribuire sul nodo jitsu, ricevo un errore che non riesce a trovare un modulo locale. Ecco quello che ho: Setupnodo jitsu non riesce a trovare i moduli locali

File:

/index.js 
/config/config.js 

index.js

var cfg = require('./config/config.js'); 

Quando si cerca di distribuire nodo jitsu mi sta dando un errore:

Error: Cannot find module './config/config.js' 

Dato che tutto questo codice funziona localmente Non credo che questo sia un problema di codifica. Ho l'impressione che i moduli locali non debbano essere inclusi in package.json ma forse lo fanno per il nodo jitsu? Ho letto la loro documentazione ma non riesco a trovare nulla di speciale per i moduli locali.

Grazie!

risposta

10

I moduli locali come questo dovrebbero funzionare correttamente .. a condizione che non siano disponibili in .gitignore o .npmignore.

I moduli nella directory node_modules richiedono di aggiungerlo all'array bundledDependencies nel file package.json.

Un modo semplice per verificare se il file è incluso nella distribuzione è eseguire tar -tf $(npm pack).

+0

.gitignore ha il nome file config.js elencato qui. La rimozione da .gitignore ha risolto il problema. Grazie! – nwkeeley

+2

Si potrebbe anche aggiungere un file '.npmignore' se si vuole tenerlo in' .gitignore', e permetterlo esclusivamente. '.npmignore' segue lo stesso formato di' .gitignore', quindi un semplice '! ./ config/config.js' dovrebbe funzionare. – Sly

3

Ho avuto esattamente lo stesso errore in fase di distribuzione, ma causato da una diversa causa principale. Nel caso in cui qualcuno si imbatte nello stesso problema: il programma di installazione

File:

/public/Data/TargetData.js 

app.js richiedono dichiarazione:

var target = require('./public/data/TargetData.js'); 

Il mio ambiente Mac OSX locale ha permesso la differenza di capitalizzazione /data/ vs. /Data/ - il server Nodejitsu no.

+0

Grazie per avermi inviato questo, mi ha risparmiato un sacco di tempo. –

Problemi correlati