0

我想在 Mac mini 上为 Android CI 设置 Jenkins 本地服务器。我配置了整个东西,但是我在使用 vncserver 时遇到了一些问题,当我尝试通过 Jenkins 运行构建时,它给了我一个错误:

Started by user asd
Building in workspace /Users/Shared/Jenkins/Home/jobs/mavenTest/workspace
Checkout:workspace / /Users/Shared/Jenkins/Home/jobs/mavenTest/workspace - hudson.remoting.LocalChannel@66dc67ca
Using strategy: Default
Last Built Revision: Revision bf4b03c150753e7f8de2fbb4b465f7512fd3bd3c (origin/HEAD, origin/master)
Fetching changes from 1 remote Git repository
Fetching upstream changes from origin
Seen branch in repository origin/HEAD
Seen branch in repository origin/master
Seen 2 remote branches
Commencing build of Revision bf4b03c150753e7f8de2fbb4b465f7512fd3bd3c (origin/HEAD, origin/master)
Checking out Revision bf4b03c150753e7f8de2fbb4b465f7512fd3bd3c (origin/HEAD, origin/master)
Warning : There are multiple branch changesets here
Starting xvnc
[workspace] $ vncserver :66 -localhost -nolisten tcp
ERROR: Failed to parse POMs
java.io.IOException: Cannot run program "vncserver" (in directory "/Users/Shared/Jenkins/Home/jobs/mavenTest/workspace"): error=2, No such file or directory
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1041)
    at hudson.Proc$LocalProc.<init>(Proc.java:244)
    at hudson.Proc$LocalProc.<init>(Proc.java:216)
    at hudson.Launcher$LocalLauncher.launch(Launcher.java:773)
    at hudson.Launcher$ProcStarter.start(Launcher.java:353)
    at hudson.plugins.xvnc.Xvnc.doSetUp(Xvnc.java:90)
    at hudson.plugins.xvnc.Xvnc.setUp(Xvnc.java:74)
    at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.doRun(MavenModuleSetBuild.java:630)
    at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:586)
    at hudson.model.Run.execute(Run.java:1603)
    at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:506)
    at hudson.model.ResourceController.execute(ResourceController.java:88)
    at hudson.model.Executor.run(Executor.java:247)
Caused by: java.io.IOException: error=2, No such file or directory
    at java.lang.UNIXProcess.forkAndExec(Native Method)
    at java.lang.UNIXProcess.<init>(UNIXProcess.java:135)
    at java.lang.ProcessImpl.start(ProcessImpl.java:130)
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1022)
    ... 12 more
Finished: FAILURE

我从这里https://www.realvnc.com/download/vnc/安装了 vnc 服务器,但它什么也没做,因为我仍然有这个错误。该怎么办 ?

4

1 回答 1

2

为什么会失败

你已经安装了 Xvnc 插件,它确实需要一个 vncserver。Jenkins 默认尝试运行该vncserver命令,因此期望它在 PATH 中。您安装的 VNC 服务器:

  1. 未安装在您的 PATH 中
  2. 未命名为 vncserver

所以它不会工作。

检查你的要求!

你需要运行一个 vncserver 吗?通常这是无头显示器所必需的,但是您的 mac mini 可能在连接屏幕的情况下运行,因此您可能只需禁用该服务器上的 Xvnc 插件...

无论如何都要让 vncserver 运行

如果你真的需要这个插件,那么要么配置commandline启动你安装的 vncserver 的选项,要么找到一个满足上述 2 个要求的 vnc 服务器(命令名和路径)。

注意:您安装的产品包含 VNC 客户端和服务器。服务器需要许可证和激活。而且服务器通常作为守护进程运行,因此不需要插件来启动它......

于 2013-08-19T20:00:35.693 回答