您的位置:首页 > 编程语言 > Java开发

Java环境变量配置

2015-10-13 09:55 281 查看
如果你想使用eclipse,myeclipse,IDEA,netbeans等IDE开发,请忽略此文,因为这些IDE并不需要配置,它们中有的是直接读取环境变量中的JRE/JDK目录,有的是自带JDK,有的是安装时设置+读取方式。综上,你如果用IDE开发,安装JDK的时候,把下一步点完就OK了。

但是,由于种种原因,大部分清华大学出版社出版的本科教材依然希望你在命令行下干活。。。

一、J2SE下环境变量的设置

需要将java.exe和javac.exe的所在目录添加到path和设置classpath,正常情况下java.exe和javac.exe会在java安装目录\jdk_版本号\bin这个目录下,classpath就设置为英文输入法下的rt.jar的路径然后点分号.;

path目录很多人陷入了一个误区,常常是手打+照抄+不修改百度上的路径,其实path的那个路径是可以复制的啊,注意path的路径是在原有路径上添加而不是新建。

(一)、设置path

废话不多说,先找到java.exe和javac.exe这两个文件



然后复制上面的路径,什么?路径复制不会?点地址栏,然后鼠标右键-->复制



此电脑-->右键 属性,点击左侧的高级系统设置



点击高级-->环境变量



然后就是设置path了,注意这里是编辑不是新建啊,很多人点新建把原来path删了,按下面的步骤操作后点确定,最好两个窗口的确定都点以下,新手经常忘了点,然后就没保存



(二)、设置classpath

注意:classpath只在命令行编译时需要,各IDE自带编译器,如果使用IDE无需配置

由于历史原因tools.jar和dt.jar在1.7之后都合并到了rt.jar,所以需要设置classpath为当前目录和rt.jar的路径

在java安装目录\jdk_版本号\jre\lib目录下找到rt.jar如图



这次我们复制文件路径,按住shift然后在rt.jar上点击鼠标右键-->选择复制为路径,这样复制出来的路径是带双引号的,需要设置环境变量的时候需要删掉双引号



再次打开环境变量的设置页面,选择新建



在弹出的新建系统变量窗口中,变量名填classpath,变量值填英文的.;然后Ctrl+V,如图



有强迫症的建议删掉双引号,不删也没关系,删掉之后如图



最后需要点两次确定,然后关闭所有cmd窗口,重新开一个cmd窗口,输入javac,如果出现如下帮助菜单则说明安装成功



(三)、可能出现的问题

1.Java更新后用不了

解决方案:重新配置以上环境变量

2.JDBC驱动打包问题

解决方案:建议用eclipse打包,打包的时候选上包含外部lib到打包的jar文件,命令行请参考:打包第3方jar,用命令行相当繁琐而且还容易出错

3.javac提示找不到文件:javac: 找不到文件: Helloworld.java

解决方案:先用dir命令查看当前目录下是否有该文件,如果没有,则先切换到有该文件的目录下

4.无法切换盘符

解决方案:切换盘符的命令没有cd和空格,直接是盘符加英文冒号,如切换到D盘是输入D:回车

5.1.6和之前版本出现找不到主类问题,Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/tools/javac/Main

解决方案:配置classpath环境变量,从1.7开始这个环境变量可以不用配了

6.JAVA_HOME环境变量是否需要设置

解决方案:看你的实际需要,如果需要经常更换版本,或者一些IDE,服务器组件需要这个变量就设置一下,如果没有这个需求还是不设置的好,免得自己陷入混乱

二、J2EE下的环境变量的设置

path和classpath设置同上,只不过Tomcat服务器在启动时需要读取JAVA_HOME或者JRE_HOME这个环境变量,下面就来设置一下JAVA_HOME

找到javac.exe的上一级目录,面向小白还是截个图



返回之后复制地址栏的路径



最后打开设置环境变量的界面跟设置classpath类似,点击新建-->变量名设置为JAVA_HOME,变量值Ctrl+V,点两次确定就OK了



然后重启启动tomcat就不会报错了

三、提倡

个人认为命令行练基本语法就行,在熟悉基本语法之后还是转到IDE练习吧。大多数清华出版社的教材没用IDE的一个很重要的原因纯粹是懒得写新教案,因为换教案的话老师还要花时间去学习适应。

四、争议

对环境变量PATH设置的争议

1. %JAVA_HOME%\bin;

2. %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

2中多设置jre的bin目录有点多余

对环境变量CLASSPATH设置的争议

1. .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

2. .;%JAVA_HOME%\jre\lib\rt.jar;

3. .;

4. .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar

必须包含当前目录.如果要使用tomcat,需再添加D:\tomcat\lib\servlet-api.jar或者复制该jar到jre\lib\ext目录下,1、2的做法都没问题。编译Swing组件时3配置有问题。4的写法与1类似
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: