Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jenkins没有在linux中识别我的java_Java_Linux_Jenkins_Opensuse - Fatal编程技术网

Jenkins没有在linux中识别我的java

Jenkins没有在linux中识别我的java,java,linux,jenkins,opensuse,Java,Linux,Jenkins,Opensuse,我正在使用OpenSuse并尝试使用rpm安装Jenkins。我在这方面遇到了很多麻烦: aquarius:/home/jeevan/Downloads # service jenkins start Job for jenkins.service failed. See 'systemctl status jenkins.service' and 'journalctl -xn' for details. 这个问题在Jenkins中被明确地描述为Java问题 但我已经通过从oracle网站下

我正在使用OpenSuse并尝试使用rpm安装Jenkins。我在这方面遇到了很多麻烦:

aquarius:/home/jeevan/Downloads # service jenkins start
Job for jenkins.service failed. See 'systemctl status jenkins.service' and 'journalctl -xn' for details.
这个问题在Jenkins中被明确地描述为Java问题

但我已经通过从oracle网站下载在我的机器上安装了java,并配置了更新选项

aquarius:/usr/lib/jenkins # java -version
java version "1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)
aquarius:/usr/lib/jenkins # javac -version
javac 1.8.0_25
aquarius:/usr/lib/jenkins # whereis java
java: /usr/bin/java /usr/lib64/java /etc/java /usr/share/java
aquarius:/usr/lib/jenkins # echo $JAVA_HOME
/usr/java/latest
aquarius:/usr/lib/jenkins # update-alternatives --config java
There are 3 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                       Priority   Status
------------------------------------------------------------
  0            /usr/lib64/jvm/jre-1.7.0-openjdk/bin/java   17147     auto mode
* 1            /usr/java/jdk1.8.0_25/bin/java              1         manual mode
  2            /usr/lib64/jvm/jre-1.5.0-gcj/bin/java       1500      manual mode
  3            /usr/lib64/jvm/jre-1.7.0-openjdk/bin/java   17147     manual mode

Press enter to keep the current choice[*], or type selection number: 1
aquarius:/usr/lib/jenkins # update-alternatives --config javac
There are 2 choices for the alternative javac (providing /usr/bin/javac).

  Selection    Path                                     Priority   Status
------------------------------------------------------------
  0            /usr/lib64/jvm/java-1.5.0-gcj/bin/javac   1500      auto mode
* 1            /usr/java/jdk1.8.0_25/bin/javac           1         manual mode
  2            /usr/lib64/jvm/java-1.5.0-gcj/bin/javac   1500      manual mode

Press enter to keep the current choice[*], or type selection number: 1
aquarius:/usr/lib/jenkins # ls
jenkins.war                                                                                                                                                                                     
aquarius:/usr/lib/jenkins # whereis jenkins                                                                                                                                                     
jenkins: /usr/lib/jenkins                                                                                                                                                                       
aquarius:/usr/lib/jenkins # 

有人能为我提供一个解决方案吗。

您正在用java 8启动jenkins。这是一个相当新的jdk,最近刚刚准备好状态生产

jenkins JIRA中的这个bug描述了类似的情况:


提出的解决方案是切换到Java7。你试过了吗?

我有另一个系统,它是用jdk 8安装的,工作正常。这里有两个系统,jdk 8+jenkins可以正常工作。如果它在其他使用jdk 8的系统中工作,它需要在这里使用jdk 8,对吗?我想有些环节缺失了。如何找到它?嗯,理论上,根据jenkins文档,它应该适用于任何jdk>=1.6的情况。所以1.8应该没问题,我试着为/usr/bin/jar创建一个链接,现在jenkins start服务开始工作了。但在浏览器中,什么也不显示。现在如果我为jenkins状态服务,它会说Unit jenkins.service进入失败状态。我从来没有使用过ubuntu的替代机制,因为我总是遇到一些问题。我总是手动安装java,只需在/opt中用java复制未打包的tar,例如在/opt/jdk1.7_51中,然后在我想要使用的java中创建一个符号链接/opt/jdk,然后在/usr/local/bin中创建符号链接,例如sudo ln-s/opt/jdk/bin/java/usr/local/bin/java这样我就有了一个相当灵活的机制来切换java版本,安装新的,等等。也许你可以自己安装java,把jenkins换成新的?