我想使用npm
一个简单的构建(受本文启发)。我的一行只有一行script
,package.json
它markdown-pdf
通过require(而不是二进制文件)取决于节点模块()。
我的测试设置是包含单个项目目录package.json
文件的最新版本npm
和node
:
$ echo "npm: $(npm -v), node: $(node -v)"
npm: 1.4.28, node: v0.10.35
$ ls -a
./ ../ package.json
这是我的package.json
:
{
"name": "mytest",
"version": "0.0.1",
"devDependencies": {
"markdown-pdf": "latest"
},
"scripts": {
"test": "node -e \"require('markdown-pdf');\""
}
}
npm test
失败,因为在test
运行脚本之前未安装必需的模块:
$ npm test
> [email protected] test /Users/me/mytest
> node -e "require('markdown-pdf');"
module.js:340
throw err;
^
Error: Cannot find module 'markdown-pdf'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at [eval]:1:1
at Object.<anonymous> ([eval]-wrapper:6:22)
at Module._compile (module.js:456:26)
at evalScript (node.js:559:25)
at startup (node.js:80:7)
at node.js:929:3
npm ERR! Test failed. See above for more details.
npm ERR! not ok code 0
是否有可能导致依赖关系可用于单个package.json
文件中的JavaScript脚本?
这可能不是使用npm的方式,但这应该可行
{
"name": "mytest",
"version": "0.0.1",
"devDependencies": {
"markdown-pdf": "latest"
},
"scripts": {
"pretest": "npm install",
"test": "node -e \"require('markdown-pdf');\""
}
}
先运行npm test
自动运行pretest
。资源
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句