2

我们最近获得了一些新的 Windows Server 2019 机器,我想将它们添加到我们的 Jenkins 设置中。问题是:执行任何外部程序都会导致错误。docker login, git status, java -version 都给出这样的错误

[TestPowershell] $ powershell.exe -NonInteractive -ExecutionPolicy ByPass "& 'C:\Users\XXX~1\AppData\Local\Temp\3\jenkins1416755497082623783.ps1'"
java : java version "1.8.0_101"
At C:\Users\XXX-sa\AppData\Local\Temp\3\jenkins1416755497082623783.ps1:1 char:1
+ java -version
+ ~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (java version "1.8.0_101":String) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError

Java(TM) SE Runtime Environment (build 1.8.0_101-b13
)
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)
Notifying upstream projects of job completion
Finished: SUCCESS

自己在服务器上试了一下,效果很好。所有设置都与我们的 2016 服务器相同,不存在此问题

编辑:我在 VM 2019 上设置了一个 vanilla master,它没有这个错误,但仍然会在 2016 master 上出现错误。

4

2 回答 2

1

出于某种原因,这似乎与 dotnet 4.8 有关。Windows 2019 1809 附带 4.7,它出现了这个奇怪的错误,它不仅发生在 java -version 上,而且 git clone 、 npm install 和 ng build 等等也会导致同样的错误。安装 dotnet framework 4.8 修复它..以防有人遇到与我们相同的问题..

于 2020-02-18T10:12:38.157 回答
0

每个默认jenkins-slave服务在SYSTEM用户下运行,例如 git 操作将失败,因为缺少用户凭据。

在 Windowsservice control manager中,将 -service(属性 - 登录)的用户更改为jenkins-slave具有适当权限的用户配置文件。

希望有帮助。

于 2019-08-07T12:04:44.073 回答