【发布时间】:2015-07-01 09:23:02
【问题描述】:
我正在尝试通过 Nant 脚本中的命令行使用 NPM 和 Grunt 编译一些 Less 文件。为此,我创建了 2 个目标
1)
<target name="npmInstall">
<property name="core.nodeUtils" value="${core.source}\iFOREX Framework\IFOREX.Clients\iFOREX.Clients.Web\nodeUtils"/>
<exec program="C:\WINDOWS\system32\CMD.EXE"
commandline="npm install"
verbose="false"
workingdir="${core.nodeUtils}">
</exec>
2)
<target name = "lessDeploy">
<property name="core.nodeUtils" value="${core.source}\iFOREX Framework\IFOREX.Clients\iFOREX.Clients.Web\nodeUtils"/>
<exec program="C:\WINDOWS\system32\CMD.EXE"
commandline="grunt lessDeploy"
verbose="false"
workingdir="${core.nodeUtils}">
</exec>
</target>
首先在相关文件夹中安装相关的 npm 项。 第二个实际上使用 grunt 运行编译。
由于某种原因,我得到的唯一输出如下:
2015-07-01 12:09:05 开始构建 iFOREX.Framework.Integration.LessCompile 2015-07-01 12:09:06 开始 目标 npmInstall 2015-07-01 12:09:06 开始 'C:\WINDOWS\system32\CMD.EXE (npm install)' 在 'D:\BuildAreas\Dev3\Source\iFOREX Framework\IFOREX.Clients\iFOREX.Clients.Web\nodeUtils' 2015-07-01 12:09:06 Microsoft Windows [版本 6.1.7601] 2015-07-01 12:09:06 版权所有 (c) 2009 Microsoft Corporation。所有权利 预订的。 2015-07-01 12:09:06
它卡在这个输出上,并且 Nant 脚本在设置的 600 秒后超时。
知道我做错了什么吗?
【问题讨论】:
-
我运行它已经有一段时间了 -
npm install是否需要您与它交互才能确认安装? -
不需要确认,我在将它添加到 Nant 之前简单地运行了它,它完美地工作
-
也许将
verbose更改为true,看看是否记录了更多信息 -
没有帮助,它只是停留在 2015-07-01 12:56:28 开始构建 iFOREX.Framework.Integration.LessCompile 2015-07-01 12:56:30 开始目标 npmInstall 2015- 07-01 12:56:30 在 'D:\BuildAreas\Dev3\Source\iFOREX Framework\IFOREX.Clients\iFOREX.Clients.Web\nodeUtils' 中启动 'cmd.exe (npm install)' 2015-07-01 12 :56:30 Microsoft Windows [版本 6.1.7601] 2015-07-01 12:56:30 版权所有 (c) 2009 Microsoft Corporation。版权所有。 2015-07-01 12:56:30
-
我想知道在命令行前添加
/C是否可以解决此问题。它对我不起作用,所以我猜可能不是:)