猿问

即使我有 JAVA 8 也无法安装 Jenkins

Ubuntu 14.04 长期支持版


据此,我需要 JAVA 8,所以我下载了 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

旁注,当尝试从侧边栏运行 eclipse 时,我也收到有关 JAVA 版本的错误。虽然从命令行运行 eclipse 工作正常。


它必须与我的 /usr/lib/jvm 文件夹中的 default-java 符号链接有关吗?它指向 Java 7 openjdk ... 执行 ls -la 显示链接


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

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

java-7-openjdk-amd64


猛跑小猪
浏览 265回答 3
3回答

撒科打诨

您可以使用以下任一选项:1) 下载基于 Docker 的 Jenkins 镜像并使用以下命令启动 Jenkins 作为容器:    - docker pull jenkins     - docker run -p 8080:8080 -p 50000:50000 -v volume_name:/var/jenkins_home --name jenkins -d jenkins2) 下载 jenkins.war 文件并使用以下命令解压缩 war 文件:    java -jar jenkins.war &

holdtom

查看 update-java-alternatives 和 update-alternatives,我遇到了这个答案我检查了 java 的当前替代品sudo update-alternatives --config java并得到There is only one alternative in link group java (providing /usr/bin/java): /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/javaNothing 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 modePress enter to keep the current choice[*], or type selection number: 然后我输入 2 并尝试安装并且成功了。我现在甚至可以从侧边栏运行 eclipse,而不必从命令行运行它。我很欣赏 RealSkeptic 在正确方向上的观点!

月关宝盒

如果可能,请尝试在 docker 容器中运行 Jenkins。它负责处理此类问题。
随时随地看视频慕课网APP

相关分类

Java
我要回答