gpt4 book ai didi

angularjs - NPM 适用于命令行,但不适用于 Jenkins

转载 作者:行者123 更新时间:2023-12-04 13:21:58 26 4
gpt4 key购买 nike

我无法让 Jenkins 从“执行 shell”(在“构建”步骤下)使用“npm”命令。

我正在尝试设置一个新的 Jenkins 实例(前一个实例的副本)。我刚刚导入了旧作业,现在正在安装这些作业所依赖的各种服务(例如 maven、nodejs、ansible 等)。

我在设置 nodejs 和 npm 时遇到问题,尤其是设置。

当我在命令行中键入命令“npm install”时,我得到以下信息:

uws@9.14.0 install /var/lib/jenkins/workspace . . .
. . .
Binary is fine
added 1282 packages in 36.424s

然后,当我尝试使用 Jenkins execute shell 运行相同的命令时,我得到以下信息:

+ npm install
/tmp/jenkins7750702649955218109.sh: line 2: npm: command not found
Build step 'Execute shell' marked build as failure

为什么我可以从命令行访问这个命令,但 Jenkins 不能?

我检查过的一些东西:

-“node”和“npm”的路径都在路径上。至少路径上有“捷径”(这在之前的 Jenkins 实例中有效)。

-node 和 npm 二进制文件拥有 root:root 所有权,但它们的安全设置(当前)为 755(或 -rwxr-xr-x)。

-我安装了 nodejs 插件。不确定如何使用它,但它的设置与之前的 Jenkins 实例相匹配。这两个实例都使用执行 shell(而不是任何特殊的 Jenkins 工具)来运行“npm”命令,而只有旧版本有效。

那么,我还应该检查什么我不是? Jenkins 需要什么才能访问“npm”命令?

最佳答案

在 Jenkins 中尝试以下选项

选项 1:

enter image description here

选项 2:

enter image description here

关于angularjs - NPM 适用于命令行,但不适用于 Jenkins,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50729752/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com