我是nodeJS和Jake的新手,但在我的公司,他们使用它来运行单元测试。这就是他们通过ant运行单元测试的方式
<exec executable="cmd" dir="${nodeJsTests.basedir}/../nodejs/">
<arg value="/C"/>
<arg value="start cmd /C "npm install & .\node_modules\.bin\jake local dir=${basedir} --trace & pause"" />
</exec>
据我了解,他们在这段代码中做了以下事情,如果我错了,请纠正我
- 进入nodejs目录。
- 在特定位置安装 jake (.\node_modules.bin\jake)
- 运行单元测试
我想在不使用 ant 的情况下实现相同的目标(运行测试)。我想我可以执行前两个步骤,但卡在第三步中。我尝试从各个目录运行命令 - Jake local 但没有成功
有人可以帮我解决这个问题吗?
最佳答案
如果解析第二个 arg
值中的字符串,可以更轻松地了解发生的情况:
npm install & .\node_modules\.bin\jake local dir=${basedir} --trace & pause
这是本质上按顺序运行这 3 个命令的简写方式:
npm 安装
.\node_modules\.bin\jake local dir=${basedir} --trace
暂停
第一个命令安装 package.json
文件中定义的所有依赖项(可能包括 jake)。
第二个命令运行本地版本的 jake(运行上一步后安装在 node_modules 文件夹中的版本)。
第三个命令只是一个用于暂停执行的 cmd
util。
只要您安装了依赖项,在没有 ANT 的情况下运行 jake 应该不会有问题(只需运行上面的第二个命令,替换 ${basedir}
值,并确保您在您的 package.json
所在的同一目录)。
关于javascript - 如何解释并运行以下 ant 命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38660343/