2013-07-12 12 views
5

Próba przetestowania złożonego programu basejs za pomocą mysql, ale nie powiedzie się.Compoundjs nie działa z jugglingdb-mysql

Mój system to Debian 7 z następujących wersjach nodejs & KMP

 
$ node -v 
v0.10.13 

$ npm -v 
1.3.4 

Oto jak zainstalowałem compoundjs

 
sudo npm install -g compound 
sudo npm install -g jugglingdb --save 
sudo npm install -g jugglingdb-mysql 

compound init testapp --db mysql 
cd testapp 
npm install
 
$ node server.js 

WARNING: JugglingDB adapter "mysql" is not installed, 
so your models would not work, to fix run: 

    npm install jugglingdb-mysql 


/srv/www/playground/node/testapp/node_modules/jugglingdb/lib/railway.js:55 
     if (!schema.adapter) throw new Error('Adapter is not defined'); 
           ^
Error: Adapter is not defined 
    at init (/srv/www/playground/node/testapp/node_modules/jugglingdb/lib/railway.js:55:36) 
    at CompoundServer.initialize (/srv/www/playground/node/testapp/node_modules/jugglingdb/index.js:31:19) 
    at CompoundServer.EventEmitter.emit (events.js:98:17) 
    at CompoundServer.initCompound (/srv/www/playground/node/testapp/node_modules/compound/lib/compound.js:123:14) 
    at CompoundServer.initCompoundServer [as init] (/srv/www/playground/node/testapp/node_modules/compound/lib/server/compound.js:53:29) 
    at /srv/www/playground/node/testapp/node_modules/compound/lib/compound.js:67:18 
    at process._tickCallback (node.js:415:13) 
    at Function.Module.runMain (module.js:499:11) 
    at startup (node.js:119:16) 
    at node.js:901:3 

Po dostaniu się błąd powyżej Próbowałem npm install jugglingdb-mysql I nadal otrzymuję ten sam błąd. Próbowałem zainstalować jugglingdb i jugglingdb-mysql globalnie i lokalnie (bez -g). Wciąż dostaję ten sam błąd.

Odpowiedz

9

Błąd wynika z wersji jugglingdb stosowanego w depozycie npm z jugglingdb-mysql, więc jedynym sposobem, aby to naprawić jest usunięcie katalogu i skopiować z nich korzystać w głównym projekcie:

cd $YOUR_PROJECT_ROOT 
rm -rf node_modules/jugglingdb-mysql/node_modules/jugglingdb 
cp -R node_modules/jugglingdb node_modules/jugglingdb-mysql/node_modules 

Nie próbowałem ręcznie instalować adaptera z githubu, może to też działa.

Problem jest zgłaszany tutaj https://github.com/jugglingdb/mysql-adapter/issues/46

+0

Działa !!!! Dzięki Jihel! –