JAVA环境配置

简介:

这两天想写一个Java程序,在官网上下载了一个JDK:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
我的操作系统是CentOS,32位的。所以我下载了一个对应32位的JDK包:jdk-7u17-linux-i586.tar.gz

解压:
$ tar -zxvf jdk-7u17-linux-i586.tar.gz

将解压所得的目录移动到 /usr/ 上。

在 /etc/profile.d/ 路径下创建了一个java-env.sh文件,编辑内容如下:


# this file is for java runtime enviroment configure
 
JAVA_HOME=/usr/jdk1.7.0_17
 
PATH=${JAVA_HOME}/bin:$PATH
CLASSPATH=.:${JAVA_HOME}/lib/tools.jar:${JAVA_HOME}/lib/dt.jar

上面这个脚本的功能是配置3个环境变量:PATH, JAVA_HOME, CLASSPATH
然后重新打开终端生效,验证一下是否成功:
$ echo $JAVA_HOME
$ echo $PATH
$ echo $CLASSPATH
如果执行结果均为预期结果,基本上就没有什么大的问题了。

为什么要这么做?因为每次启动Shell的时候系统都会执行/etc/profile脚本程序,该程序会依次执行/etc/profile.d/*.sh文件。这里在/etc/profile.d/目录下添加一个java-env.sh文件,每次启动的时候都会执行。

写一个简单的JAVA程序来验证一下:
在当前目录下建一个HelloWorld.java文件,打开并编译: 


public class HelloWorld{
    public static void main (String[] args){
        System.out.println("Hello world!");
    }
}

然后执行命令进行编译:
$ javac HelloWorld.java

完成编译后,当前路径下会生成了一个HelloWorld.class文件。执行看看:
$ java HelloWorld
Hello world!

遇到的问题:
(1) 我在运行"java HelloWorld"的时候程序输出错误信息:
Exception in thread "main" java.lang.UnsupportedClassVersionError: HelloWorld : Unsupported major.minor version 51.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
    at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: HelloWorld. Program will exit.
出错原因是用了高版本的javac编译了程序,用了低版本的java来运行,版本不兼容所以出错了。
查得深层次的原因是因为系统原来就自带得有一个低版本的java程序,就是/usr/bin/java。系统默认就用它了。
解决方法:将java-env.sh文件中的
PATH=$PATH:${JAVA_HOME}/bin
改成:
PATH=${JAVA_HOME}/bin:$PATH
让系统默认使用我们新的java程序。 


目录
相关文章
|
25天前
|
Java 数据库连接 数据库
hibernate正向生成数据库表以及配置——TestStu.java
hibernate正向生成数据库表以及配置——TestStu.java
16 1
|
25天前
|
Java 数据库连接 数据库
hibernate正向生成数据库表以及配置——Teacher.java
hibernate正向生成数据库表以及配置——Teacher.java
11 0
|
25天前
|
Java 数据库连接 数据库
hibernate正向生成数据库表以及配置——Student.java
hibernate正向生成数据库表以及配置——Student.java
10 0
|
1月前
|
IDE Java 编译器
滚雪球学Java(02):入门Java必学 | 环境配置详细教程
【2月更文挑战第13天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,助你一臂之力,带你早日登顶🚀,欢迎大家关注&&收藏!持续更新中,up!up!up!!
51 3
|
3月前
|
存储 Java Windows
Java21 JDK下载安装及Windows环境变量配置
JDK是Java的开发工具包,要进行Java学习或开发之前,需先下载安装,下载地址如下:提示:这网址里面有三个扩展名的文件,分别是“.zip”、“.exe”和“.msi”,鄙人选择的是.exe的文件,下方的安装和环境的配置也是安装该文件的安装程序进行的。
261 2
|
2月前
|
Java Linux
手把手教你Linux系统下的Java环境配置,简单到不行!
手把手教你Linux系统下的Java环境配置,简单到不行!
73 1
|
7天前
|
Java
Java配置大揭秘:读取自定义配置文件的绝佳指南
Java配置大揭秘:读取自定义配置文件的绝佳指南
11 0
Java配置大揭秘:读取自定义配置文件的绝佳指南
|
28天前
|
Java API Maven
email api java编辑方法?一文教你学会配置步骤
在Java开发中,Email API是简化邮件功能的关键工具。本文指导如何配置和使用Email API Java:首先,在项目中添加javax.mail-api和javax.mail依赖;接着,配置SMTP服务器和端口;然后,创建邮件,设定收件人、发件人、主题和正文;最后,使用Transport.send()发送邮件。借助Email API Java,可为应用添加高效邮件功能。
|
30天前
|
Java 数据安全/隐私保护 Windows
java实现邮件发送准备工作(前期配置)
java实现邮件发送准备工作(前期配置)
7 0