用Eclipse啟動(dòng)JBoss
由于我在ubuntu下權(quán)限設(shè)置分開,如
/home/JBoss/ (JBoss4.2的安裝文件路徑) 文件所屬用戶 JBoss
/home/luko/Eclipse(Eclipse3.4的安裝路徑) 文件所屬用戶 luko
所以在Eclipse想debug web程序,用Eclipse啟動(dòng)JBoss,但eclpse所屬的用戶luko沒有權(quán)限啟動(dòng)JBoss,所以要修改JBoss的一些文件權(quán)限,否則啟動(dòng)不成功(或提示一些文件找不到)
1. /home/JBoss/server/default/conf/JBoss-service.xml要修改為(其他用戶)可讀寫
2 ./home/JBoss/server/default/log/server.log 要修改為(其他用戶) 可讀寫
3. /home/JBoss/server/default/tmp/ 這個(gè)目錄要修改為(其他用戶) 可讀寫,因?yàn)镋clipse啟動(dòng)JBoss要在這個(gè)目錄插入部署文件
4. /home/JBoss/server/default/deploy 把要debug的程序,例如工程 TestServlet.war 放在這個(gè)目錄
5. 開始轉(zhuǎn)向debug模式,同時(shí)在Eclipse要指定TestServlet的src部分的java文件路徑
6. 在 Eclipse 工程 TestServlet點(diǎn)右鍵 Debug as --->Debug on server 配置JBoss
7. 遠(yuǎn)程地址訪問JBoss例如 本機(jī)ip地址是192.168.199.42其他機(jī)器訪問本ip, 在server/default/deploy/JBoss-web.deployer/server.xml文件<Connector port="8080" address="${JBoss.bind.address}"${JBoss.bind.address}就是綁定的ip,改成0.0.0.0就可以了.8080是訪問端口號
8 .如果用Eclipse 啟動(dòng)JBoss后debug project,現(xiàn)在用Eclipse關(guān)閉JBoss后,現(xiàn)在想JBoss/bin/run.sh啟動(dòng)JBoss會(huì)提示錯(cuò)誤:
could not make copy for file:/home/JBoss-4.2.0.GA/server/default/conf/JBoss-service.xml
java.io.IOException :permission denied
failed to find META-INF/JBoss-service.xml to archive JBoss-service.xml
原因是用Eclipse啟動(dòng)JBoss,在/server/default/tmp/底下生成的project所屬權(quán)限是luko所以JBoss用戶無法刪除這些文件解決辦法: 把/server/default/tmp/底下的project全刪除然后執(zhí)行JBoss/bin/run.sh
9 .有時(shí)候jsp文件改動(dòng)拉,但是頁面刷新還是沒有效果原因是server/default/work/localhost/**project 這個(gè)是存儲(chǔ)jsp編譯后的.class文件這個(gè)jsp.class文件沒有被更新,直接把對應(yīng)的jsp.class刪除,(把整個(gè)project目錄刪除好象不行,不知道是不是bug)然后刷新browser
10 .如果/server/default/deploy/void_econtract.jar存在,且void_econtract.war權(quán)限所屬 luko, JBoss用戶想把 /tmp/void_econtract.jar copy 到/server/default/deploy/
會(huì)提示permission denied
【編輯推薦】