
我从CentOS和OpenJDK 1.7开始
# java -version java version "1.7.0_25" OpenJDK Runtime Environment (rhel-2.3.10.4.el6_4-x86_64) OpenJDK 64-Bit Server VM (build 23.7-b01,mixed mode)
为了运行一个特定的应用程序,我想使用从RPM提供的Oracle的Java 1.6。
我将Oracle二进制文件复制到一个特定的新目录中:
# pwd /oracleJava/jdk-6u45-linux-x64-rpm
我提取了二进制文件,它给了我以下文件:
需要帮助在centos上安装pecl 5.8
在AWS EBS支持的服务器上,Nginx大型静态文件服务速度缓慢
使用gdb 7支持deBUGgingPython程序需要什么?
带有gcc 4.4.7的CentOS 5.8与libstdc ++ 6.0.8的链接。 这怎么可能?
Bz2每个文件在一个目录中
# ls jdk-6u45-linux-amd64.rpm sun-javadb-core-10.6.2-1.1.i386.rpm sun-javadb-javadoc-10.6.2-1.1.i386.rpm sun-javadb-clIEnt-10.6.2-1.1.i386.rpm sun-javadb-demo-10.6.2-1.1.i386.rpm sun-javadb-common-10.6.2-1.1.i386.rpm sun-javadb-docs-10.6.2-1.1.i386.rpm
我安装了RPM,rpm实用程序认为它安装正确:rpm -q jdk jdk-1.6.0_45-fcs.x86_64
# rpm -Uvh ./*.rpm Preparing... ########################################### [100%] package jdk-2000:1.6.0_45-fcs.x86_64 is already installed # rpm -Uvh sun-javadb-*.rpm [I omit the Feedback because it generates a formatting error] #
但是,Java版本仅显示1.7#java -version java版本“1.7.0_25”OpenJDK运行时环境(rhel-2.3.10.4.el6_4-x86_64)OpenJDK 64位服务器虚拟机(构build23.7-b01,混合模式)
换句话说,我期待的Oracle文件给我一些新的/ java目录的地方,一个新的java可执行文件将返回一个不同的答案“java -version”
我需要这个新的目录,以便我可以设置JAVA_HOME并使用Java的1.6版本。
有用的build议将不胜感激。 提前致谢。
使用Forever运行我的Node应用程序不会logging任何输出
在linux服务上运行Java编码损坏?
如何列出所有linux环境variables,包括LD_liBRARY_PATH
libmsodbcsql-13.0.so.0.0的链接器错误阻止pyODBC到MS sql连接。 CentOS 7
make文件中的错误:***缺less分隔符。 停止
问题是,Oracle的RPM是(任意IMO!)对“替代”系统的无知。
相反,他们把东西安装在非标准的地方(/ usr / java),然后期望用户/系统管理员手工弄乱PATH变量。
这是一个麻烦!
所以在你的情况下可能发生的事情是,你的JDK / JRE已经安装在/ usr / java的一个子目录中了,但是因为你还没有将相关的bin子目录添加到你的PATH的前面, OpenJDK工具通过java命令名。
你可以通过使用“alternatives”来配置,然后选择Oracle命令来解决这个问题。 但是这很麻烦,特别是如果你还想要JDK工具的话。 (有很多!)
如果您使用Chef,另一种方法是使用“java”食谱来进行安装。
Oracle JDK RPM非常糟糕。
他们不注册替代系统。
他们不提供 (以RPM计) “java”
他们已经搞乱了他们的RPM版本字符串,并依靠Epoch(…)
所有版本的JDK(即1.6和1.7)都有相同的时代
为了快速解决您的问题,您可以运行以下命令:
/usr/sbin/alternatives --install /usr/bin/java java /usr/java/default/bin/java 20000
它将注册并选择Oracle Java安装。 OpenJDK的重量是16000; 这里我们注册了20000.一旦你运行了这个命令,你可以通过使用(已经提到的) 选项–config java命令在java版本之间切换。
至于不太快的修复,你可以使用我的虚拟Java包。 这很可能不是完美的(我可以改进;)),但是它提供了 java(使我的apache-tomcat包快乐)并注册了替代系统。 这个虚拟包简直取决于jdk …你可以在这里找到它: https : //github.com/keystep/virtual-java-rpm
运行以下命令查看您的JVM是否正在列出。
sudo update-alternatives --config java
如果您的JVM被列出,请选择它。
请检查您的JAVA_HOME是否使用echo $JAVA_HOME指向JDK 6。 为了将您的JAVA_VERSION更改为Java 6,您需要指向Java开发工具包6.您还需要将bin目录添加到$PATH变量中。 请确保JDK6 bin目录位于其他JDK bin之前的$ PATH中,如果有的话。 您可以通过命令java -version在环境中检查Java的版本java -version其他答案非常适合在不同的Java配置之间切换
尝试以下方法
从中删除OpenJDK文件夹
/usr/lib/jvm
我有同样的问题,并通过这种方法得到解决
总结以上是内存溢出为你收集整理的我在CentOS上打开了JDK 1.7; 我安装了Oracle的Java rpm; Oracle Java似乎不存在全部内容,希望文章能够帮你解决我在CentOS上打开了JDK 1.7; 我安装了Oracle的Java rpm; Oracle Java似乎不存在所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)