GlassFish安裝下載和Eclipse熱部署

醉面韋陀發表於2010-08-19

一、GlassFish安裝配置之前需要先安裝配置好JDK和Ant。下面先介紹JDK和Ant的下載、安裝和配置


1.JDK
下載地址:java.sun.com/javase/downloads/index.jsp這裡有各個版本的JDK的下載,選擇相應適合的版本下載,
下載完成是.exe格式檔案,直接安裝即可。注意:安裝路徑最好不要有空格。


配置環境:
Windows下Java用到的環境變數主要有3個,JAVA_HOME,CLASSPATH,path
這裡有各個版本的JDK的下載,選擇相應適合的版本下載,下載完成是.exe格式檔案,直接安裝即可。注意:安裝路徑最好不要有空格。
配置環境:Windows下Java用到的環境變數主要有3個,JAVA_HOME,CLASSPATH,path
右鍵點選我的電腦 - 屬性 - 高階 - 環境變數,進入到設定介面,可以在使用者變數裡設定也可以在系統變數裡設定(系統變數針對所有使用者,
使用者變數設定只針對當前使用者)這裡選擇在系統變數裡設定
JAVA_HOME設定:指向JDK的安裝路徑,這裡假設是 D:\JDK6
path設定:保留原來的path內容,在其最後加上 %JAVA_HOME%\bin,別忘了中間用 ; 隔開。
CLASSPATH設定:".;%JAVA_HOME%\lib\dt.jsr;%JAVA_HOME%\tools.jar;%JAVA_HOME%\bin"
最前面的 “.”是告訴JDK搜尋class時先查詢當前目錄的class檔案,至於classpath後面制定的具體檔案是由Java語言的import機制和jar機制決定的

2.Ant


配置環境:
解壓ant包到本地目錄
設定ANT_HOME=(實際解壓縮的目錄)
設定path,保留path原來的內容在其最後加上%ANT_HOME%\bin

二、下面就真正開始GlassFish安裝

下載地址:GlassFish.dev.java.net/public/downloadsindex.html
a. 下載的GlassFish是一個jar包,例如:GlassFish-v2ur2-b04-windows.jar,下載後放在某個目錄下,在設定好JDK和Ant相關的環境變數後轉到命令列狀態,然後執行以下命令:
java -Xmx256m -jar "目標檔案"  即:java -Xmx256m -jar GlassFish-v2ur2-b04-windows.jar此步驟進行解壓縮操作,解壓縮完成後在當前目錄下生成一個GlassFish目錄。
視窗可能出現在最底層,現實桌面會發現視窗。另外,你需要拖動下滾動條才讓您下一步。或者一段時間後才可以下一步。
b. 進入GlassFish主目錄,會發現有一個setup.xml檔案,繼續執行以下命令:
ant -f setup.xml    此命令完成GlassFish的安裝
c. 啟動GlassFish服務:進入GlassFish目錄下的bin目錄,執行以下命令
asadmin start-domain
如果這裡出現問題,請到安裝目錄下檢視,在bin同目錄下是否有domains這個資料夾。如果沒有,需要手動建立一個服務域,
程式碼如下:asadmin create-domain --adminport 4848 domain1
埠是4848,建議使用者名稱是:admin,密碼是adminadmin
和預設的統一。

d. 停止GlassFish服務,同樣進入GlassFish目錄下的bin目錄,執行以下命令
asadmin stop-domain

GlassFish預設管理埠為4848,預設管理員為:admin,預設口令為:adminadmin,在瀏覽器上輸入localhost:4848,就會出現管理控制檯。

GlassFish是通過ant來安裝的,安裝在指令碼setup.xml下,在裡面可以修改一下配置,比如埠等等
在setup.xml中主要有以下設定:

<property name="domain.name" value="domain1"/>    域名  <property name="instance.name" value="server"/> <property name="admin.user" value="admin"/>    管理員使用者名稱  <property name="admin.password" value="adminadmin"/>    管理員密碼  <property name="admin.port" value="4848"/>    管理平臺埠  <property name="instance.port" value="8080"/>    例項埠,也就是通過這個埠來訪問web應用  <property name="orb.port" value="3700"/> <property name="imq.port" value="7676"/> <property name="https.port" value="8181"/>    https埠


根據需要修改以上設定,執行:ant -f setup.xml,如果系統沒有安裝ant,在GlassFish\lib\ant下有一個ant,安裝結束後,進入GlassFish/bin下,在控制檯下面命令啟動GlassFish
asadmin start-domain domain1        //domain1是上面設定的domain.name,系統預設domain1
啟動結束後,asadmain stop-domain domain1        //停止伺服器

三、在GlassFish中部署web應用


有3種方式,可以直接將war或ear放在GlassFish/domain/autodeploy目錄下,GlassFish啟動後會自動部署
第二是通過命令asadmain deploy部署應用,另外asadmain updeploy 可以解除安裝應用
通過asadmain deploy --help 和 asadmain undeploy --help 獲得更多幫助
第三是通過GlassFish管理控制檯

四、GlassFish配置jdbc資料來源

對於Java EE應用,經常需要事先設定資料來源,否則部署時會報:javax.naming.NameNouFoundException
配置方法是進入Resources -> JDBC ,會看到JDBC Resources 和 Connection pools

先設定Connection pools,以MySql為例,點選New,命名為MySqlPools,ResourceType選擇javax.sql.ConnectionPoolDataSource, Database vendor 肯定選擇mysql,然後點選next進入下一頁面
最主要是設定Additional Properties,也就是jdbc連線配置,設定好url,user,password,其他保持預設值,也可以根據需要自己新增屬性。
設定好連線池後,接著設定JDBC Resources,新建一個JDBC,名稱要和web應用裡的持久化單元採用的資料來源的名稱一致。
然後再次部署web應用,就會正常執行了。


五、熱部署
目標就是像MyEclipse一樣,有redeploy功能。不用手動重新部署。
我這裡只寫步驟,遇到問題了請參考http://www.iteye.com/topic/141589,如果需要用到touch.exe檔案,請到我javaeye的部落格裡去下載。
1、在Eclipse裡,把專案的編譯的.class輸出到WebContent/WEB-INF目錄下。具體做法在專案右擊到properties--Java Build Path -- source --Default output folder,選擇WebContent/WEB-INF,在裡面建一個classes,把.class儲存在裡面。
2、按照目錄部署,讓glassfish啟動,目錄部署命令如下,asadmin deploydir --name 你專案名 你專案的WebContent的絕對路徑
3、在WebContent下新建一個.reload檔案, 把touch.exe也拷貝到這個目錄下。
4、在Eclipse裡Run--External Tools -- External tools configuration
Main 裡的location:${project_loc}/WebContent/touch.exe
Working directory:${project_loc}/WebContent
Arguments:.reload
Common裡的Display in Favorites menu選中Extends tools。
以後每次修改.java檔案都可以通過touch.exe直接熱部署。
以上是我查詢網上的資料,然後整理的,也有些是複製的,希望對大家有用

相關文章