配置问题常有,新机器上、软件升级后以及机器重装后。每次配置碰到的问题都有点不同,时间久了还容易忘。常见的就不说了,这次主要描述三个问题:
1 重装JDK7
2 为Eclipse 配置JDK
3 为Eclipse 配置ZIP版的Tomcat7
0 安装Eclipse
Eclipse不用安装,解压就可以用,但必须先安装JDK并配好环境变量,所以现在提示错误。
1 重装JDK7
官网上下载安装,我的是32位,安装后路径在C:\Program Files\Java。尽管用eclipse,还是有必要配置JDK环境变量的。
我的电脑---属性---高级---环境变量---系统环境变量
JAVA_HOME:顾名思义就是JDK的安装目录,但要进一步制定到jdk目录下。点击新建,然后在弹出的的对话框中变量名填JAVA_HOME,变量值填C:\Program Files\Java\jdk1.7.0_05 JAVA_HOME的存在意义是作为一个相对路径的替代,为PATH和CLASSPATH服务,当重装JDK后,无需手工修改PATH和CLASSPATH,只用修改JAVA_HOME即可。
PATH:path变量的作用就是系统在任何路径下都可以识别java命令。这些可执行命令当然就是一堆bin,在JDK的bin目录下。
点击编辑在原有的变量值后加上个分号(英文状态下的),然后加上%JAVA_HOME%/bin 当然你也可以填绝对路径C:\Program Files\Java\jdk1.7.0_05\bin
大家都知道DOS自己的命令,如ipconfig,netstat等,这些是windows的内部命令,启动后常驻内存。安装JAVA并配置完环境变量后也能在DOS下敲打JAVA命令,这些JAVA命令是外部命令,通过设置PATH让我们在DOS命令行下能够调用。换种方式,你不设置PATH,在DOS里面切换到目录C:\Program Files\Java\jdk1.7.0_05\bin 然后在这个目录下敲打JAVA命令同样也能执行。
CLASSPATH:这个变量设置的目的是为了程序能找到相应的".class"文件。这里同样是新建CLASSPATH,我填了.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\jre\lib\rt.jar
注意前面的.;(英文状态下)必须要带,不是我写错了。
关于CLASSPATH的作用有两种说法,一种是类的路径,在编译运行java程序时,如果有调用到其他类的时候,在classpath中寻找需要的类。这种说法是正确的,譬如上面我们就添加了常用到的tools.jar,dt.jar和rt.jar包。网上常见的例子是编译(javac)一个java程序A,把生成的A.class挪动到不同的文件夹下,然后添加CLASSPATH,就可以成功运行(java A)。否则会有NoClassDefFindError的异常,原因就是找不到.class文件。这种例子直观表明了CLASSPATH的作用,但更重要的作用还是调用一些有用的java包。
全部配置完后,在DOS里面输入“java -version”中间有空格 试验一下。
2 为Eclipse 配置JDK
我的eclipse版本是Eclipse Java EE IDE for Web Developers Version: Juno Release Build id: 20120614-1722
eclipse是用来开发的,不是给现成的JAVA程序跑的,所以JRE是不够的,一定要给eclipse配置JDK。作为JAVA EE开发,还必须为你的web容器也配置好JDK,不然一样报错。
1、window-->Preferences-->Java-->compiler 在这里选择你的jdk版本,我的是jdk1.7
2、window-->Preferences-->Java-->Installed JREs。这里可以添加新的也可以修改已有的,JRE7对我基本没用,所以我直接把JRE7修改成JDK7。改动如下,
JRE home:C:\Program Files\Java\jdk1.7.0_05
JRE name:jdk7
如果要新建怎么办呢?问题出在选add后出现三个选项:Standard VM,Standard VM 1.x.x和Execution Environment Description。三者区别官网给了详尽的解释http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.jdt.doc.user%2Ftasks%2Ftask-add_new_jre.htm
简答说,我们还是要选Standard VM,然后JRE home填C:\Program Files\Java\jdk1.7.0_05 (包含bin和lib子文件夹)。JRE name填jdk7,Default VM Arguments留空白。
3、Eclipse中新建一个Server,并为它指定JDK。
window-->Preferences-->Server-->Runtime Environments-->Add-->Apache-->Apache Tomcat v7.0(勾选Create a new local server)-->Next
Name:Apache Tomcat v 7.0
Tomcat installation directory:C:\APP Program\apache-tomcat-7.0.29
JRE:jdk7
3 为Eclipse 配置ZIP版的Tomcat7
Tomcat官网上有zip、tar.gz和Windows Service Installer三种安装包。其中Zip是Windows下的免安装版本,只需要解压后做一定的手动配置就可以正常的使用;tar.gz是Linux下的安装包;Windows Service Installer很明显就是Windows下的Install程序,双击后就可以自动安装了。我选择32位的zip,解压到C:\APP Program\apache-tomcat-7.0.29
网上说需要配置Tomcat的环境变量,我试了什么都不用配,也不用重启系统。
这种方式启动的Tomcat会有一个命令行窗口停留在你的面前,这就是启动着的服务器,如果把这个窗口关闭了,你的Tomcat服务器也就关闭了。
但这时问题来了,你在Eclipse中启动Tomcat,然后浏览http://localhost:8080显示404error。这显然不是Tomcat的问题,是因为在eclipse中的server中添加一个新的服务时,eclipse默认值有点小问题。http://hi.baidu.com/kingcs_2008/item/5634f6f24156950084d27860给了很好的解决办法。简答说就是
1、找到server操作窗口,双击下面的tomcat服务
2、在打开的设置中,将Server Locations的选项选成第二个“Use Tomcat installation (takes control of .........)”
终于一切OK!