当前位置: 首页 > 面试题库 >

Jenkins脚本在Windows上使用npm install时过早退出

周育
2023-03-14
问题内容

在我的Jenkins工作中,我想使用Grunt构建一个JavaScript应用程序。Jenkins构建脚本创建一个构建目录(如果尚不存在),更改到该目录并运行:

npm install grunt
npm install grunt-zip
grunt --gruntfile=[something]

(当然grunt-cli是全局安装的。)在构建作业时,第一条语句导致Grunt和依赖项按预期的方式下拉。但是,该作业然后成功终止:

Archiving artifacts
No emails were triggered.
Finished: SUCCESS

第二个npm install不运行。知道为什么脚本在运行后终止npm install而不是继续执行后续语句吗?


问题答案:

因此,事实证明这npm是一个批处理文件,而不是可执行文件,因此需要使用callJenkins脚本来调用它:

call npm install grunt


 类似资料:
  • 问题内容: 我正在尝试使用Jenkins Pipeline脚本将一些二进制文件上传到Artifactory。我使用了Artifactory 文档中的相同示例,但是它不起作用。我有以下错误: 还有另一个类似的问题,但没有回应。 人工工厂5.4.6 问题答案: 您没有完全正确地使用声明式管道。环境部分不能那样工作。您只能在其中定义字符串,我以为会引发错误,但显然不会。 您可能最终等于对Artifact

  • 我有一堆shell脚本,以前是在Linux机器上运行的。现在,我们已经切换到Windows,我需要在那里运行这些脚本。我已经安装了Cygwin,但是有没有一种方法可以让脚本使用Cygwin运行,但是调用是从Windows批处理中进行的呢?

  • 问题内容: 我正在通过Jenkins构建Qt GUI应用程序。我添加了3个构建步骤: 构建测试可执行文件 运行测试可执行文件 用gcovr编制覆盖率报告 由于某种原因,用于运行测试可执行文件的shell任务在执行后会停止。即使是简单的也不运行。测试是使用Google Test编写的,并输出xUnit XML文件,这些文件将在构建后进行分析。一些测试启动了应用程序的用户界面,因此我安装了jenkin

  • 我有一个应用程序,它在一个线程中使用getline()从标准输入中读取数据。我想从主线程关闭应用程序,而getline仍然阻止另一个线程。如何做到这一点? 我不想强迫用户必须按ctrl-Z来关闭stdin和应用程序。 null null null 显示问题的示例代码:

  • 问题内容: 它在Windows 7(64位),带有Win32 Extensions for Python的Python 2.6上运行。 我有一个简单的脚本,仅打印“ hello world”。我可以用启动它。在这种情况下,我可以将输出重定向到文件。但是,如果我仅通过在命令行上键入并重定向输出来运行它,就会出现异常。 我想我是在升级到Windows 7后首先得到此错误的。我记得它应该在XP中工作。我

  • 我有一台Windows机器作为Jenkins奴隶。使用Groovy脚本我需要实现以下内容: 1) 在 Jenkins 从属服务器上创建一个文件夹 2) 将文件从本地机器复制到 Jenkins 从属 3)修改Jenkins上的PATH变量