【发布时间】:2014-03-29 21:43:39
【问题描述】:
我有一个小小的 NPM 挑战要给你。
技术。信息:
- 操作系统:Windows 7
我正在尝试:
cd到项目文件夹-->运行npm start,“start”在package.json中配置为“node”。
我收到以下错误:
**** npm start Error: Cannot find module 'C:\'
**** Exit status 8
**** the npm-debug.log look like the below:
0 info it worked if it ends with ok
1 verbose cli [ 'C:\\Program Files\\nodejs\\\\node.exe',
1 verbose cli 'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli 'start' ]
2 info using npm@1.3.24
3 info using node@v0.10.25
4 verbose node symlink C:\Program Files\nodejs\\node.exe
5 verbose run-script [ 'prestart', 'start', 'poststart' ]
6 info prestart tile-tease-api@0.1.0
7 info start tile-tease-api@0.1.0
8 verbose unsafe-perm in lifecycle true
9 info tile-tease-api@0.1.0 Failed to exec start script
10 error tile-tease-api@0.1.0 start: `node .`
10 error Exit status 8
11 error Failed at the tile-tease-api@0.1.0 start script.
11 error This is most likely a problem with the tile-tease-api package,
11 error not with npm itself.
11 error Tell the author that this fails on your system:
11 error node .
11 error You can get their info via:
11 error npm owner ls tile-tease-api
11 error There is likely additional logging output above.
12 error System Windows_NT 6.1.7601
13 error command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "start"
14 error cwd "FOLDER OF PROJECT - EDITED"
15 error node -v v0.10.25
16 error npm -v 1.3.24
17 error code ELIFECYCLE
18 verbose exit [ 1, true ]
在我的故障排除过程中,我发现:
- 似乎与调用路径有关。因为我没有问题,如果我这样做 ** 而不是“节点”。在 package.json 文件的开始定义中,我定义了实际路径 ** 或者如果我执行“节点”。直接在 cmd 中,而不是通过“npm start”命令。
问题是我在其他开发人员之间共享该项目,而他们正在 Mac 上进行开发。在他们的设置中,它与开始“节点”一起工作。......并且拥有不同的 package.json 文件会很麻烦,并且会超出使用 Git 的目的.....
以前有没有人遇到过这个问题,并且对我可以做些什么来克服这个问题有任何想法。
【问题讨论】:
-
看起来它在尝试运行 tile-tease-api 脚本的“预启动”阶段(而不是“开始”)失败了。相反,当您运行“节点”时。从 cli,它不会运行预启动。因此,您可能会遇到环境问题来解决 tile-tease-api 路径。注意:我尝试了“节点”。在“开始”字段中,它适用于我的 Win7 机器。
-
您好 smertrios,谢谢您的回答。您对可能导致该环境问题的原因有什么建议吗?再次感谢您!
-
tease-tile-api 来自哪里?你的 git checkout 的一部分?还是工具链/系统工具(预装)?查看 package.json ,“预启动”配置为什么? (尝试从 cli 运行其内容)
-
嗨 smertrios :-) 我的 package.json 中没有 prestart,它还没有配置。所以没有什么可以从 cli 运行。 tile-tease-api 是我制作的私有 API。为了让我们解决这个问题,我可以告诉你任何其他信息:-)
-
我认为问题不在于 npm,而在于 tile-tease-api。是脚本吗?它是否具有无法解决的依赖关系?只是我的 2 美分...
标签: node.js npm package-managers