Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.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
Can';即使我有Java8,也不能安装Jenkins_Java_Linux_Jenkins_Ubuntu 14.04 - Fatal编程技术网

Can';即使我有Java8,也不能安装Jenkins

Can';即使我有Java8,也不能安装Jenkins,java,linux,jenkins,ubuntu-14.04,Java,Linux,Jenkins,Ubuntu 14.04,Ubuntut 14.04 LTS 根据我的需求,我需要Java8,所以我下载了JDK和JRE。不幸的是,当再次尝试安装jenkins时 sudo apt-get install jenkins 我仍然收到错误消息 Aborting invoke-rc.d: initscript jenkins, action "stop" failed. dpkg: error processing archive /var/cache/apt/archives/jenkins_2.176.2_all.de

Ubuntut 14.04 LTS

根据我的需求,我需要Java8,所以我下载了JDK和JRE。不幸的是,当再次尝试安装jenkins时

sudo apt-get install jenkins
我仍然收到错误消息

Aborting
invoke-rc.d: initscript jenkins, action "stop" failed.
dpkg: error processing archive /var/cache/apt/archives/jenkins_2.176.2_all.deb (--unpack):
 subprocess new pre-removal script returned error exit status 1
Found an incorrect Java version
Java version found:
java version "1.7.0_201"
OpenJDK Runtime Environment (IcedTea 2.6.17) (7u211-2.6.17-0ubuntu0.1)
OpenJDK 64-Bit Server VM (build 24.201-b00, mixed mode)
检查我的$PATH,它显示以下内容

/usr/lib/jvm/jre1.8.0_221/bin:/usr/lib/jvm/jdk1.8.0_211/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
应该使用的java是8。 甚至跑步

java -version
给了我我所期望的

java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)
如果安装了java 8,为什么会出现java版本错误?我还需要做什么才能确保JAVA 8是默认版本?

我尝试失败了

sudo apt-get install openjdk-8-jre
得到

Unable to locate package openjdk-8-jre
There is only one alternative in link group java (providing /usr/bin/java): /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java
Nothing to configure.
请注意,当尝试从侧栏运行eclipse时,我也会得到一个关于JAVA版本的错误。不过,从命令行运行eclipse可以很好地工作

它是否必须使用my/usr/lib/jvm文件夹中的默认java符号链接?它指向Java7OpenJDK。。。执行ls-la显示链接

default-java -> java-1.7.0-openjdk-amd64
java-1.7.0-openjdk-amd64 -> java-7-openjdk-amd64
java-7-openjdk-amd64

如果可能,尝试在docker容器中运行Jenkins。它会处理这些问题。

如果可能,尝试在docker容器中运行Jenkins。它解决了这些问题。

在研究更新java替代方案和更新替代方案时,我遇到了这个问题

我检查了java当前的替代方案

sudo update-alternatives --config java
得到

Unable to locate package openjdk-8-jre
There is only one alternative in link group java (providing /usr/bin/java): /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java
Nothing to configure.
使用我找到的一个答案,我添加了java可执行文件的替代选项,执行以下命令

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jre1.8.0_221/bin/java 1
然后我再次检查列表中是否有我的备用java

sudo update-alternatives --config java
现在给了我

There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      auto mode
* 1            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      manual mode
  2            /usr/lib/jvm/jre1.8.0_221/bin/java               1         manual mode

Press enter to keep the current choice[*], or type selection number: 
然后我输入了2并尝试安装,它成功了。我甚至可以从侧栏运行eclipse,而不必从命令行运行它


我欣赏正确方向的观点,真怀疑

在研究更新java替代方案和更新替代方案时,我发现

我检查了java当前的替代方案

sudo update-alternatives --config java
得到

Unable to locate package openjdk-8-jre
There is only one alternative in link group java (providing /usr/bin/java): /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java
Nothing to configure.
使用我找到的一个答案,我添加了java可执行文件的替代选项,执行以下命令

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jre1.8.0_221/bin/java 1
然后我再次检查列表中是否有我的备用java

sudo update-alternatives --config java
现在给了我

There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      auto mode
* 1            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      manual mode
  2            /usr/lib/jvm/jre1.8.0_221/bin/java               1         manual mode

Press enter to keep the current choice[*], or type selection number: 
然后我输入了2并尝试安装,它成功了。我甚至可以从侧栏运行eclipse,而不必从命令行运行它


我欣赏正确方向的观点,真怀疑

您可以使用以下任一选项:

1) 下载基于Docker的Jenkins图像,并使用以下命令将Jenkins旋转为容器:

    - docker pull jenkins
    - docker run -p 8080:8080 -p 50000:50000 -v volume_name:/var/jenkins_home --name jenkins -d jenkins
    java -jar jenkins.war &
2) 下载jenkins.war文件并使用以下命令提取war文件:

    - docker pull jenkins
    - docker run -p 8080:8080 -p 50000:50000 -v volume_name:/var/jenkins_home --name jenkins -d jenkins
    java -jar jenkins.war &

您可以使用以下任一选项:

1) 下载基于Docker的Jenkins图像,并使用以下命令将Jenkins旋转为容器:

    - docker pull jenkins
    - docker run -p 8080:8080 -p 50000:50000 -v volume_name:/var/jenkins_home --name jenkins -d jenkins
    java -jar jenkins.war &
2) 下载jenkins.war文件并使用以下命令提取war文件:

    - docker pull jenkins
    - docker run -p 8080:8080 -p 50000:50000 -v volume_name:/var/jenkins_home --name jenkins -d jenkins
    java -jar jenkins.war &

$JAVA\u HOME
env变量呢?当我回显$JAVA\u HOME时,我什么也得不到@ArnaudClaudelso尝试设置它,然后再试一次。尝试将它设置为jdk8 Home您自己用户中的变量是不相关的。安装程序在不同的用户下运行,实际上它会检查符号链接定义。看一下
更新java替代方案
命令。那么
$java\u HOME
env变量呢?当我回显$java\u HOME时,我什么也得不到@ArnaudClaudelso尝试设置它,然后再试一次。尝试将它设置为jdk8 Home您自己用户中的变量是不相关的。安装程序在不同的用户下运行,实际上它会检查符号链接定义。请看一下
updatejava alternations
命令。