我是整个Node.js世界的新手,但是这个可能很简单的问题使我发疯。这基本上是我在较大项目中遇到的问题的简化版本。
文件结构
package.json
test1
我的package.json看起来像这样:
{
"name": "Temp",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"scripts": {
"testscript": "test1",
"testrun":"yarn testscript"
}
}
test1仅包含一个简单的console.log('test')
命令。
现在,当我执行yarn testrun
时,出现以下错误:
PS C:\dev\temp> yarn testrun
yarn run v1.9.4
$ yarn testscript
$ test1
'test1' is not recognized as an internal or external command,
operable program or batch file.
error Command failed with exit code 1.
如果文件具有扩展名(即test1.js),则它可以识别并正常工作。
在任何人说添加文件扩展名之前,这只是我创建的最简单的用例。其中有一个更大的项目,对于我所有的Linux和Mac朋友来说似乎都可以正常工作。
TIA,D
答案 0 :(得分:0)
您想要node test1
。您现在所拥有的就是试图运行一个不存在的名为“ test1”的程序。您希望 existent 程序节点以参数“ test1”运行,该参数将告诉节点运行名为“ test1.js”(或任何扩展名)的JavaScript文件。
考虑文档:yarn scripts
所以:
{
"name": "Temp",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"scripts": {
"testscript": "node test1",
"testrun":"yarn testscript"
}
}