[转]redhat中安装JAVA7的问题

由于原来做Java开发都是在别人已经配置好的环境中开发,所以还没遇到过配置环境的问题,现在要自己装一个RedHat系统自己配置开发环境,没想到安装JDK就除了问题,找了好久才解决,今天拿出来跟大家分享一下,避免有相同问题的朋友走弯路。

 

我的问题是这样的,首先我拷贝一个jdk的tar包,放到指定目录下面解压缩,然后配置/etc/profile里面的环境变量,OK 一切顺利,没有任何错误,然后兴高采烈的把自己的工程上传到服务器上开始运行,结果一运行我自己做的shell文件,问题就出现了,调用我的Java类没有反映,程序不运行了…..我这个郁闷,到处找原因,打印信息,重新传工程,后来迫不得已把服务器重新启动一下,依然解决不了问题,我的程序就是转不起来,在控制台输入javac命令,没问题。然后我又输入java,结果问题出现,显示一下信息:

===================================================================

Usage: gij [OPTION] … CLASS [ARGS] …
to invoke CLASS.main, or
gij -jar [OPTION] … JARFILE [ARGS] …
to execute a jar file
Try `gij –help’ for more information.

====================================================================

 

我就郁闷了,怎么会出现个gij的东西呢,这是什么玩意,于是上网查询,终于知道了, 这是个linux系统自带的java编译工具,由于安装系统的时候,没有去掉这个工具导致的。

 

接下来就苦苦寻找卸载的方法,结果失败而告终,接着寻找解决办法………

 

终于,看见曙光了,让我查到了一个alternatives命令。(兴奋中…..)。这个命令的用法大家可以在控制台中输入

man alternatives命令查看详细介绍。

 

 

解决办法:

在终端里面依次输入以下两句话

alternatives –install /usr/bin/java java /usr/java/jdk1.6.0_11/bin/java 300

alternatives –install /usr/bin/javac javac /usr/java/jdk1.6.0_11/bin/javac 300

上面两条命令中红色部分为你新安装的JDK的路径,可以按照你安装的位置自行修改。

 

好了,现在已经成功一半了,继续 ……

 

最重要的一步:在终端里面执行alternatives –config java  命令,你会看到如下结果:

====================================================================

 

共有 2 个程序提供“java”。

选择    命令
———————————————–
*  1           /usr/lib/jvm/jre-1.4.2-gcj/bin/java
+ 2           /opt/jdk1.5/bin/java

按 Enter 来保存当前选择[+],或键入选择号码:2

 

====================================================================

 

有两个java版本,系统会提示让你选择当前要使用的版本,只要选择你要使用版本的对应序号,然后回车就大功告成了。

 

最后 你可以在终端执行alternatives –display java命令,查看当前两个版本的详细信息,当然,不看也可以。

 

接下来再在终端里面输入java,你会看到

====================================================================

Usage: java [-options] class [args…]
(to execute a class)
or  java [-options] -jar jarfile [args…]
(to execute a jar file)

where options include:
-d32          use a 32-bit data model if available

-d64          use a 64-bit data model if available
-client   to select the “client” VM
-server   to select the “server” VM
-hotspot   is a synonym for the “client” VM  [deprecated]
The default VM is client.

-cp <class search path of directories and zip/jar files>
-classpath <class search path of directories and zip/jar files>
A : separated list of directories, JAR archives,
and ZIP archives to search for class files.
-D<name>=<value>
set a system property
-verbose[:class|gc|jni]
enable verbose output
-version      print product version and exit
-version:<value>
require the specified version to run
-showversion  print product version and continue
-jre-restrict-search | -jre-no-restrict-search
include/exclude user private JREs in the version search
-? -help      print this help message
-X            print help on non-standard options
-ea[:<packagename>…|:<classname>]
-enableassertions[:<packagename>…|:<classname>]
enable assertions
-da[:<packagename>…|:<classname>]
-disableassertions[:<packagename>…|:<classname>]
disable assertions
-esa | -enablesystemassertions
enable system assertions
-dsa | -disablesystemassertions
disable system assertions
-agentlib:<libname>[=<options>]
load native agent library <libname>, e.g. -agentlib:hprof
see also, -agentlib:jdwp=help and -agentlib:hprof=help
-agentpath:<pathname>[=<options>]
load native agent library by full pathname
-javaagent:<jarpath>[=<options>]
load Java programming language agent, see java.lang.instrument

====================================================================

 

这是多么熟悉的信息啊,看到它是多么的亲切,呵呵   其实生活可以这么美好,现在去运行你的Java程序吧,哈哈 。

 

朋友们看完之后要留下脚印噢,如果有更好的办法可以回复大家交流。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.