在CentOS服务器中我看不到任何jenkins文件中的任何Java配置。有什么主意吗?

  • 回答 (2)
  • 关注 (1)
  • 查看 (757)

我有一个CentOS服务器,我试图运行jenkins作为服务:

```

service jenkins start

```

我正在以root用户身份运行,并得到以下回复:

```

Starting Jenkins bash: /usr/bin/java: No such file or directory [FAILED]

```

我已经使用echo命令打印了一些到命令行:

```

[root@xyz opt]# echo $JAVA_HOME

/opt/jdk

[root@xyz opt]# echo $PATH

/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin:/opt/jdk/bin:/opt/grails/bin

[root@xyz opt]# java -version

java version "1.7.0_45"

Java(TM) SE Runtime Environment (build 1.7.0_45-b18)

Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)

[root@xyz opt]# which java

/opt/jdk/bin/java

```

我看不到任何jenkins文件中的任何Java配置。有什么主意吗?

迷迭香迷迭香提问于
黄易音乐战组程序员修改于

如果你去/etc/init.d/打开jenkins文件,你会发现:

candidates="

/etc/alternatives/java

/usr/lib/jvm/java-1.6.0/bin/java

/usr/lib/jvm/jre-1.6.0/bin/java

/usr/lib/jvm/java-1.7.0/bin/java

/usr/lib/jvm/jre-1.7.0/bin/java

/usr/lib/jvm/java-1.8.0/bin/java

/usr/lib/jvm/jre-1.8.0/bin/java

/usr/bin/java

"

这些是jenkins寻找java的路径,这种情况,java不存在于任何上述路径中。

所以寻找你有java的路径,并在上面的jenkins文件中添加路径。

既然在/opt/jdk/bin目录下有java,那么把它添加到jenkins文件中:

candidates="

/opt/jdk/bin/java <----在这里添加

/etc/alternatives/java

/usr/lib/jvm/java-1.6.0/bin/java

/usr/lib/jvm/jre-1.6.0/bin/java

/usr/lib/jvm/java-1.7.0/bin/java

/usr/lib/jvm/jre-1.7.0/bin/java

/usr/lib/jvm/java-1.8.0/bin/java

/usr/lib/jvm/jre-1.8.0/bin/java

/usr/bin/java

"

缪雪儿sakura回答于

尝试使用以下方法修复它:

ln -s /opt/jdk/bin/java /usr/bin/java

服务实用程序正在使用的脚本文件可能是/etc/init.d/jenkins您也可以编辑此文件

扫码关注云+社区

领取腾讯云代金券