JDK安裝卸載與Eclipse的安裝配置
1:背景
進公司用SSH(Struts,spring和hibernate)開發(fā)已經(jīng)有兩個月了,但由于一直要么只負責表示層的開發(fā),要么只負責業(yè)務(wù)層的開發(fā),要么只負責數(shù)據(jù)庫底層的開發(fā),就這樣,一個毫無JAVA程序開發(fā)和Web開發(fā)背景的我,由于有點面向?qū)ο箝_發(fā)的基礎(chǔ),也能夠協(xié)助經(jīng)理將一個項目給像模像樣地完成了。現(xiàn)在項目完成了,我反而心里覺得空落落的,因為雖然自己涉及過web開發(fā)的方方面面,但至今不會獨自進行項目的開發(fā),連tomcat,eclipse,jdk……都沒有安裝過,也從沒安裝過,進公司之前,別人就已經(jīng)替我安裝好了。于是趁著這個端午節(jié)3天的假日,強忍住不出去玩,一個人呆在家里,打算將那個完成的項目全部遷移到我的筆記本上。雖然從沒安裝過開發(fā)和運行環(huán)境,但做項目這么久,也知道需要安裝哪些程序或者文件包——jdk,tomcat,eclipse,mysql,nacicate,另加三個框架——struts,spring,hibernate。廢話少說,下面進入主題:
2:JDK的安裝及其系統(tǒng)環(huán)境變量的設(shè)置
我直接將公司的jdk安裝文件給拷貝回來了,一共是70M左右,不知道是第幾版本的。我也不管三七二十一,一口氣先后安裝了jdk,eclipse和tomcat,然后將項目導(dǎo)入eclise,結(jié)果一打開,里面簡直慘不忍睹,jsp文件似乎并不被識別,而.java文件里面到處都是錯。于是上網(wǎng)求助,查了大半天,似乎最后才明白了一點:tomcat必須在elipse之前安裝,在jdk安裝完成之后再安裝,而jdk和tomcat安裝完了之后都必須設(shè)置所謂的環(huán)境變量,并且還要在eclipse中進行配置。而我,卻只是將它們分別安裝了一下,壓根兒就沒有進行任何配置,這就造成了它們?nèi)g彼此不認識,所以eclipse打開的項目自然到處都是錯誤。呵呵,這些都是最基本的常識,地球人都知道,但我是個新手,從來不知道原來安裝程序后還要對其進行配置,還要與其他程序進行關(guān)聯(lián)!我冒著被貽笑大方的巨大風險,將這點列在這里,是希望后來的新手別像我這樣,犯如此低級的錯誤。
2.1 JDK的卸載
由于我一口氣將這三個程序都安裝了,但后來得知這些都是需要配置的,所以我就又將它們?nèi)冀o卸了。好,問題來了!我在卸載JDK的時候,在“開始”——“程序”菜單中沒有看到JDK,所以就認為也許JDK沒有安裝到我的電腦上,于是就將安裝JDK的那個文件夾里的內(nèi)容全都給刪了,到最后只有jre那個目錄無法刪除。OK,災(zāi)難由此開始,我的無知導(dǎo)致我的端午節(jié)的第一天一整天都在為我的這個過錯進行糾正!問題出在:我第二次雙擊jdkSetup.exe安裝文件時,安裝的畫面總是一閃而過,然后報出這樣一條提醒的語句:你的系統(tǒng)中已經(jīng)安裝了JDK程序,是否要繼續(xù)重新安裝?我點“確定”,但沒過多久,又回到了剛才的那個提醒畫面中來。于是我就打開“開始”——“控制面板”——“添加或刪除程序”,在里面找到JAVA UPDATE 和JAVA DEVELOPMENT這兩個程序,我點擊“刪除”,但最后總提示說:你的安裝程序有問題。無論我怎樣刪,就是刪不掉。于是又上網(wǎng)尋求答案,百度谷歌了好久,看了好多解決方案,試了之后都不行,例如:下載一個更高版本的JDK,安裝之后將系統(tǒng)中已經(jīng)安裝的JDK覆蓋掉;又如:打開注冊表,找到JAVASoftware和SUN,將這兩個注冊文件都給刪除掉;再如:下載一個強力卸載工具,強制將JDK卸載掉……就這樣從上午9點試到下午2點鐘,都還沒搞定,連寶貴的午餐時間都給浪費掉了!但我就是不甘心,后來見一高手說:在注冊表里,按Ctrl + F,分別輸入SUN,sun,Java,java,jre,JAVA,jdk,JDK,每查找到一個注冊信息,如果是左側(cè)欄的注冊文件夾,就將該文件夾直接刪除;如果是右側(cè)的鍵值表,就選中右擊——刪除掉,每一個字段都必須反復(fù)地查找并刪除,直到最后再也查找不到為之。于是我就照著此法去做,一直刪了2個多小時,才終于全部刪除干凈,沒想到安裝一個JDK,在注冊表中竟然注冊了這么多信息!好了,既然都刪掉了,我就開始安裝了,但是結(jié)果讓我很失望:系統(tǒng)竟然還是提示說我的電腦上已經(jīng)安裝了JDK!這簡直讓我無語!我想:注冊表里的與JDK有關(guān)的信息都已經(jīng)被我刪除掉了,那么安裝程序又是從哪里又找到JDK的蛛絲馬跡的呢?難道是注冊表里的信息還沒刪除干凈?于是我又打開注冊表,又查找剛才那一個字眼,沒想到這次又查找到了若干,于是又一一刪除。刪除完了,為了確認這次是不是已經(jīng)全部刪除干凈,我重啟了電腦并打開注冊表,繼續(xù)查找,結(jié)果這一次再也沒找到,于是我打開“開始”——“控制面板”——“添加或刪除程序”,好了,這一次再也沒有那個JAVA UPDATE和JAVA DEVELOPMENT的程序了。于是我再次雙擊JDK的安裝程序,好了這次終于可以正常安裝了,總算是邁出第一步了!
這里還要提醒大家的是:安裝上面的方法還是并不一定 就行的,如果其他程序中已經(jīng)關(guān)聯(lián)上了JDK,比如eclipse或tomcat,那么可能還需要將這些程序也都刪除或卸載掉才行!
2.2 JDK的環(huán)境變量設(shè)置
JDK安裝好了之后,必須設(shè)置其環(huán)境變量,這樣也方便以后程序的編譯和運行!
但是為了大家閱讀方便,我這里再貼出來:
首先右鍵點我的電腦。打開屬性。然后選擇“高級”里面的“環(huán)境變量”,在新的打開界面中的系統(tǒng)變量里需要設(shè)置三個屬性“java_home”、“path”、“classpath”,其中在沒安裝過jdk的環(huán)境下,path屬性是本來存在的。而java_home和classpath是不存在的。
首先點“新建”,然后在變量名寫上java_home,顧名其意該變量的含義就是java的安裝路徑,呵呵,然后在變量值寫入剛才安裝的路徑“E:\Java\jdk1.6.0_02”;其次在系統(tǒng)變量里面找到path,然后點編輯,path變量的含義就是系統(tǒng)在任何路徑下都可以識別。打開該變量時,會發(fā)現(xiàn)其
“變量值”后面的文本框中已經(jīng)有了內(nèi)容,我們不要刪除這些內(nèi)容,而是按“End”,定位到該文本框的末尾,如果末尾有一個分號“;”,就直接添加JAVA命令所在的路徑,如果沒有分號,則需要添加一個分號后再添加JAVA命令的路徑。
java命令的路徑是“%java_home%\bin;%java_home%\jre\bin”(其中“%java_home%”的意思為剛才設(shè)置java_home的值),也可以直接寫上“E:\Java\jdk1.6.0_02”;最后再點“新建”,然后在變量名上寫classpath,該變量的含義是為java加載類(class or lib)路徑,只有類在classpath中,java命令才能識別。其值為“.;%java_home%\lib;%java_home%\lib\tools.jar (要加.表示當前路徑)”,與“%java_home%有相同意思”
以上三個變量設(shè)置完畢,則按“確定”直至屬性窗口消失,下來是驗證看看安裝是否成功。先打開“開始”->“運行”,打入“cmd”,進入dos系統(tǒng)界面。然后打“java -version”,如果安裝成功。系統(tǒng)會顯示java的版本信息。
另外安裝java時,安裝jdk 和 jre要有兩個目錄,安裝時都選擇在同一目錄會出現(xiàn)bin和lib文件覆蓋現(xiàn)象,從而出現(xiàn)無lib\tools.jar文件的現(xiàn)象,到時即使正確設(shè)置了環(huán)境變量后javac也不可用??!因此安裝jdk后一定要看下在jdk\lib下是否有tools.jar文件,有的話按照上面的方法設(shè)置環(huán)境變量就ok了
2.3 寫一個經(jīng)典的JAVA程序——Hello World
這個程序最然簡單,但很經(jīng)典,之所以經(jīng)典,自有其道理,諸君請看:
首先,開啟文本編輯器如txt,新建一個文本文件,寫入如下代碼:
public class HelloWorld!{
public static void main(String args[]) {
System.out.println("Hello World!");
}
}
然后關(guān)閉編輯器,重命名本文件為HelloWorld.java。注意:如果文件里的類名為helloworldt,則本文件名也要改為helloworld.java,即文件名必須與類名相同,大小寫也要必須一樣!
然后,“開始”——“運行”或者直接安裝Win + R,打開命令行,輸入cmd,點擊確定或回車后,就打開了命令符窗口。如果剛才的Test.java
文件保存在f:\中,則在該窗口中輸入f:,然后回車,光標處為:F:\>。這時,輸入javac Test.java,然后回車,再輸入java Test,然后回車,
Ok,如果一切正常的話,窗口中會顯示This is a test program.這一行文字;否則,肯定會出錯,下面便是常見的幾種錯誤類型及其解決方案:
* 錯誤1:
'javac' 不是內(nèi)部或外部命令,也不是可運行的程序或批處理文件。
(javac: Command not found)
產(chǎn)生的原因是沒有設(shè)置好環(huán)境變量path。Win98下在autoexce.bat中加入path=%path%;c:jdk1.2in,Win2000下則控制面板->系統(tǒng)->高級->環(huán)境變量->系統(tǒng)變量...看到了?雙擊Path,在后面加上c:jdk1.2in。當然我們假設(shè)JDK安裝在了c:jdk1.2目錄下(有點唐僧了?)...好像還要重啟系統(tǒng)才起作用...(//知道了!//西紅柿)好,再試試!javac HelloWorld。
* 錯誤2:
HelloWorld is an invalid option or argument.
拜托,給點專業(yè)精神,java的源程序是一定要存成.java文件的,而且編譯時要寫全.java呀。
OK, javac HelloWorld.java (這回總該成了吧?)
* 錯誤3:
HelloWorld.java:1: Public class helloworld must be defined in a file called
"HelloWorld.java".
public class helloworld{
^
這個問題嘛,是因為你的類的名字與文件的名字不一致。(誰說的,明明看到人家都有這樣寫的 ( ) OK,準確地說,一個Java源程序中可以定義多個類,但是,具有public屬性的類只能有一個,而且要與文件名相一致。還有,main方法一定要放在這個public的類之中,這樣才能java(運行)這個類。另外一點是Java語言里面是嚴格區(qū)分大小寫的,初學(xué)者要注意呀。像上例中 helloworld 與 HelloWorld 就認為是不一樣,因而...oh... 好,改好了,嘻嘻... javac HelloWorld.java...(咦,怎么什么也沒有呀?)//faint 這就是編譯通過了!看看是不是多了一個HelloWorld.class ?(hehe..按書上教的:) java HelloWorld (!! 這個我知道,不是java HelloWorld.class喲)
* 錯誤4:
Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld
呵呵,這個嘛,就是著名的類路徑(classpath)問題啦。實際上,類路徑是在編譯過程就涉及的Java中的概念。classpath就是指明去哪里找用到的類,就這么簡單。由于我們的HelloWorld沒用到其它的(非java.lang包中的)類,所以編譯時沒遇到這個問題。運行時呢,就要指明你的類在哪里了。解決方法嘛,可以用下面的命令運行:
java -classpath . HelloWorld“.”就代表當前目錄。當然這樣做有點麻煩(是“太麻煩”?。覀兛梢栽诃h(huán)境變量中設(shè)置默認的classpath。方法就照上述設(shè)置path那樣。將classpath設(shè)為:
classpath=.;c:jdk1.2libdt.jar;c:jdk1.2lib ools.jar 后面的兩個建議也設(shè)上
,以后開發(fā)用的著。java -classpath . HelloWorld(再不出來我就不學(xué)java了)
* 錯誤5:
Exception in thread "main" java.lang.NoSuchMethodError: main
?。?/咣當)別,堅持住??纯茨愕拇a,問題出在main方法的定義上,寫對地方了嗎,
是這樣寫的嗎:
public static void main(String args[]) { //一個字都不要差,先別問為什么了...
對,包括大小寫!
java -classpath . HelloWorld (聽天由命了?。?
Hello World!
?。╢aint!終于...)
歡迎來到Java世界!所以說,無法運行HelloWorld 真的并不是一個“最簡單的問題”。
#p#
3 tomcat的安裝及其環(huán)境變量的設(shè)置
第一步:去tomcat官方網(wǎng)站上下載一個壓縮文件,解壓下來即可,不需安裝。
第二步:接下來就是設(shè)置環(huán)境變量了,注意:tomcat的環(huán)境變量與jdk相關(guān)聯(lián),因此必須先安裝好jdk并設(shè)置好其環(huán)境變量后,再開始安裝tomcat。
在我的電腦->屬性->高級->環(huán)境變量->系統(tǒng)變量中添加以下環(huán)境變量(假定你的tomcat安裝在e:\tomcat):
CATALINA_HOME:c:\tomcat
CATALINA_BASE:c:\tomcat
TOMCAT_HOME: c:\tomcat
然后修改環(huán)境變量中的classpath(這一步與上面jdk相關(guān)聯(lián),這里的classpath變量便是上面在安裝jdk時所創(chuàng)建的環(huán)境變量):把tomat安裝目錄下的common\lib下的servlet.jar追加到classpath中去,修改后的classpath如下:classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet-api.jar(注意:末尾最好別加分號) 注意:雙擊打開classpath變量時,其值為jdk的相關(guān)值,即:
.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar,現(xiàn)在要追加tomcat的該變量值,需要先在末尾添加一個分號(如果末尾有分號,就不必添加了),然后再添加tomcat的值: %CATALINA_HOME%\common\lib\servlet-api.jar。
【注意最新版本的Tomcat中可能沒有common這個文件夾了。所以servlet-api.jar應(yīng)該的路徑為
%CATALINA_HOME%\lib\servlet-api.jar;請根據(jù)自己的情況自己修改!】
接著可以啟動tomcat:在IE中訪問http://localhost:8080,如果看到tomcat的歡迎頁面的話說明安裝成功了。
再接著找到tomcat目錄下的conf文件夾,用editplus打開server.xml。找到
第三步:建立自己的jsp app目錄
1.到Tomcat的安裝目錄的webapps目錄,可以看到ROOT,examples, tomcat-docs之類Tomcat自帶的的目錄;
2.在webapps目錄下新建一個目錄,起名叫myapp;
3.myapp下新建一個目錄WEB-INF,注意,目錄名稱是區(qū)分大小寫的;
4.WEB-INF下新建一個文件web.xml,內(nèi)容如下:
|
5.在myapp下新建一個測試的jsp頁面,文件名為index.jsp,文件內(nèi)容如下:
|
6.重啟Tomcat
7.打開瀏覽器,輸入http://localhost:8080/myapp/index.jsp 看到當前時間的話說明就成功了。
8.如果在這一步出現(xiàn)如下錯誤:
exception
javax.servlet.ServletException: javax.servlet.ServletException: java.lang.NoClassDefFoundError: javax/el/ELResolver
那就檢查一下Tomcat/lib下是否已經(jīng)有el-api.jar el-ri.jar兩個jar文件,沒有則拷貝到此目錄下。重啟Eclipse測試;同時,如果機器上已經(jīng)有Eclipse,又安裝MyEclipse,MyEclipse會自動查找jre,他首先檢測到的是C:\Program Files\Java(jdk安裝目錄)中的jre,而不是C:\Program Files\Java\jdk1.5.0_06中的jre,原先的Eclipse的jre也隨之改動(解決方法(Eclipse為例,MyEclipse類似)window->preferences->Java->Installed JRES->Edit->更改jre home為C:\Program Files\Java\jdk1.5.0_06);如果還不行,就將el-api.jar包也添加到classpath環(huán)境變量中去。
第四步:建立自己的Servlet:
寫入你的第一個Servlet:
在你新建的Application myapp/WEB-INF/classes/test目錄下新建HelloWorld.java
|
然后照樣用javac HelloWorld.java來編譯這個文件,如果出現(xiàn)無法import javax.servl
et.*
那么就是應(yīng)該把C:\Tomcat\common\lib里面的servlet-api.jar文件拷貝到C:\JDK\jre\lib\ext中,再次編譯,就沒有問題了!
然后在Tomcat目錄里面的C:\Tomcat\webapps\myapp里面按如下的文件結(jié)構(gòu):
myapp\index.jsp
myapp\WEB-INF\classes\test\HelloWorld.class(把上面生成的HelloWorld.class文件放在這個
里面)
然后在瀏覽器中輸入http://localhost:8080/myapp/HelloWorld,于是Server眾望所歸的報錯了:Error 404--Not Found
怎么回事呢?
Servlet必須使用C:\Tomcat\webapps\myapp\WEB-INF這個目錄下面的web.xml文件進行注冊,
用EditPlus打開這個web.xml文件,
在
|
為什么呢?
因為 這樣的結(jié)構(gòu)
表示指定包含的servlet類.
而以下的結(jié)構(gòu)
表示指定HelloServlet應(yīng)當映射到哪一種URL模式。
在修改web.xml完畢過后,重新啟動Server,然后再輸入http://localhost:8080/myapp/HelloWorld,,那么偌大一個Hello,World!等
著你呢,恭喜你!
第五步:建立自己java Bean
1. 在你新建的Application myapp/WEB-INF/classes/test目錄下新建TestBean.java
|
然后照樣用javac TestBean.java來編譯這個文件。
2.然后在你新建的應(yīng)用程序目錄myapp下新建一個新的jsp文件:testBean.jsp
|
好了,確定各個文件的位置:
|
3.重啟Tomcat如果需要的話,在瀏覽器輸入:http://localhost:8080/myapp/testBean.jsp 幸運的話就會看到:
Java Bean Test: The author's blog address isHttp://yexin218.cublog.cn
這樣就完成了整個Tomcat下的jsp、servlet和javabean的配置。
第六步:配置虛擬目錄
打開 Tomcat6.0\conf\server.xml 文件,在
|
您正在閱讀的是:JDK安裝卸載與Eclipse的安裝配置
【編輯推薦】