首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在操作系统6上安装OpenJDK 8?

如何在操作系统6上安装OpenJDK 8?
EN

Stack Overflow用户
提问于 2020-01-21 21:17:33
回答 1查看 697关注 0票数 2

我目前遇到的一些问题是一个CentOS6环境。以前安装了Java7,最近对Java8应用程序进行了更新,并特别使用了Java8 LocalDate.now()函数提供了新特性。当然,Java8的安装是为了让它能够工作--但是--它没有。

我在这里尝试遵循OpenJDK 8安装说明(也更新了“替代方案”),但这没有奏效-- https://www.digitalocean.com/community/tutorials/how-to-install-java-on-centos-and-fedora#install-openjdk-8

我还尝试在同一链接上安装Oracle 8版本,但由于Oracle出现了新的恼人的许可问题,该版本无法工作,而且命令不断地说我未经授权就可以下载.tar文件。

我有点不知道下一步该做什么。据我所见,我认为Open 8的版本是在LocalDate.now()引入之前的几个版本;

代码语言:javascript
复制
java -version

命令说;

代码语言:javascript
复制
openjdk version "1.8.0_232"
OpenJDK Runtime Environment (build 1.8.0_232-b09)
OpenJDK 64-Bit Server VM (build 25.232-b09, mixed mode)

看上去是25楼。然而,根据这个链接,https://coderanch.com/t/716444/java-lang-ClassNotFoundException-Didn-find,看起来构建的最小版本是使用LocalDate.now()函数的版本26。

理想情况下,我希望使用Oracle JDK 8版本来匹配开发环境,但我也无法做到这一点。甲骨文很烦人。这是当我试图在安装Oracle JDK 8的数字海洋链接上运行命令时收到的错误消息;

代码语言:javascript
复制
Connecting to login.oracle.com|209.17.4.8|:443... connected.
HTTP request sent, awaiting response... 401 Authorization Required
Authorization failed.

不确定是否还需要在包含登录凭据的命令上传递另一个标志,我还没有找到任何有关这方面的指南。

Update1

只要按照建议通过AdoptOpenJDK安装AdoptOpenJDK并将其配置为通过“替代品”使用,'java -version‘输出如下;

代码语言:javascript
复制
openjdk version "1.8.0_232"
OpenJDK Runtime Environment (build 1.8.0_232-b09)
Eclipse OpenJ9 VM (build openj9-0.17.0, JRE 1.8.0 Linux amd64-64-Bit Compressed References 20191017_442 (JIT enabled, AOT enabled)
OpenJ9   - 77c1cf708
OMR      - 20db4fbc
JCL      - 97b5ec8f383 based on jdk8u232-b09)

然而,我仍然看到日志文件中的错误输出;

代码语言:javascript
复制
java.lang.ClassNotFoundException: java.time.LocalDate

更新2

按照建议返回到真正的基础,这是有帮助的,但造成了更多的混乱。我测试过了;

1)使用主方法在本地编译HelloWorld,将.class文件推送到服务器,并使用java命令运行该文件--

2)使用主方法在本地创建HelloWorld.java,将.java文件推送到服务器,使用javac在服务器上编译以创建HelloWorld.class,并使用java命令运行该文件--

3)在本地创建HelloWorldServlet.java,在本地编译,将.class文件推送到服务器,并在浏览器中运行/HelloWorld --这会失败并引发错误。

因此,我开始怀疑这是否与Tomcat 7的设置方式有关。它实际上是由轻松的Apache 3通过cPanel的WHM来管理的,这无助于解决这一问题,因为它已经很老了,确实需要进行重大的升级。

这是令人沮丧的,因为它只在安装了Apache的标准Linux盒上工作。理想情况下,我想让这个工作成为-是这样,我可以进一步拖延,并避免做一个完整的服务器重新构建,迁移和web应用程序的设置-但是-它看起来不好.

对尝试的选择有什么最后的想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-25 20:37:32

解决办法..。关闭服务器控制面板,它们增加了复杂性,而没有提供任何真正的好处。

事实证明,这个问题实际上是由于Tomcat最初是通过EasyApache3在cPanel系统上安装的。在安装时,看起来EasyApache3认为在Tomcat启动脚本中硬编码java版本是一个很棒的主意。因此,当您在系统上更新Java版本时,Tomcat启动脚本实际上一直使用旧版本。我设法找到了脚本搜索和更新的代码,解决了这个问题。

我的意思是,说真的,谁会这么做??#BangingHeadAgainstWall --为cPanel / EasyApache3构建它的开发人员需要对自己有一个强有力的了解!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59849348

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档