Je développe deux modules pour NodeJS, le premier nommé aligator
et le second aligator-methods
. Le deuxième dépend du premier à travailler. Je développe ces deux modules en même temps et je souhaite créer un lien global aligator
pour pouvoir l'utiliser comme sur le registre npm et je viens de l'installer globalement. Pour faire cette documentation NPM dit que je dois utiliser npm link
mais cela ne fonctionne pas.
Fichier package.json
du module aligator
:
{
"name": "aligator",
"version": "0.0.1",
"description": "",
"main": "index.js",
"private": true,
"directories": {
"doc": "docs",
"example": "examples",
"test": "spec"
},
"scripts": {
"test": "gulp jasmine"
},
"license": "MIT",
"devDependencies": {
"gulp": "^3.6.2",
"gulp-jasmine": "^0.2.0",
"gulp-jshint": "^1.6.1",
"gulp-rename": "^1.2.0",
"jasmine-node": "^1.14.3"
},
"dependencies": {
"bluebird": "^1.2.4",
"lodash": "^2.4.1",
"mathjs": "^0.22.0"
}
}
Fichier package.json
du module aligator-methods
:
{
"name": "aligator-methods",
"version": "0.0.1",
"description": "",
"main": "index.js",
"private": true,
"directories": {
"doc": "docs",
"example": "examples",
"test": "jasmine"
},
"scripts": {
"test": "gulp jasmine"
},
"author": "",
"license": "MIT",
"devDependencies": {
"gulp": "^3.6.2",
"gulp-jasmine": "^0.2.0",
"gulp-jshint": "^1.6.1",
"gulp-rename": "^1.2.0",
"jasmine-node": "^1.14.3"
},
"dependencies": {
"lodash": "^2.4.1",
"mathjs": "^0.22.0",
"aligator": "^0.0.1"
}
}
Tout d'abord, j'ai lié le module globalement:
$ cd ~/aligator
$ npm link
/usr/local/lib/node_modules/aligator -> /Users/roc/aligator
Ceci si je ne me trompe pas a créé une référence globale de mon module aligator
et maintenant je peux utiliser ce module de partout où je veux dans l'ordinateur.
Ensuite, je suis allé à l'autre module et j'ai essayé d'installer la dépendance mais cela m'a donné cette sortie:
$ cd ~/aligator-methods
$ npm install
npm ERR! 404 404 Not Found: aligator
npm ERR! 404
npm ERR! 404 'aligator' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it
npm ERR! 404 It was specified as a dependency of 'aligator-methods'
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, or http url, or git url.
npm ERR! System Darwin 13.2.0
npm ERR! command "node" "/usr/local/bin/npm" "install"
npm ERR! cwd /Users/roc/aligator-methods
npm ERR! node -v v0.10.28
npm ERR! npm -v 1.4.16
npm ERR! code E404
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /Users/roc/aligator-methods/npm-debug.log
npm ERR! not ok code 0
J'ai même essayé de le lier directement avec:
$ cd ~/aligator-methods
$ npm link aligator
/Users/roc/aligator-methods/node_modules/aligator -> /usr/local/lib/node_modules/aligator -> /Users/roc/aligator
Mais cela n'a pas fonctionné non plus.
Des pensées sur ce qui pourrait se passer? J'ai lu quelque part que cela avait peut-être quelque chose à voir avec mon installation de node et npm parce qu'il a été fait par Homebrew et que parfois j'ai besoin de l'utiliser sudo
, cela semblait peu probable mais j'ai essayé ce qu'ils proposaient et cela n'a pas fonctionné non plus.
aligtor
et vous essayez de vous y référer dans le deuxième module commealigator
. Cela peut également faire planter votre dépendance.