tags:
- maven
- jetty
- idea
- jrebel
- java
maven+jetty+idea+jrebel 實現專案熱部署
開發環境
開發過程中: 修改java或者工程檔案 需要重新對工程進行build deploy耗時太久 到無法忍受
如何實現一次部署之後,後面的修改全部熱部署呢?
- 使用jrebel實現
- web容器使用的是jetty
- 專案管理使用的maven
- ide使用的是idea
實現步驟
- 開啟idea中的settings-->plugins 搜尋jrebel --> browse repositories
- install 開始進入下載 下載完成之後應用上 並且重啟idea
- 因為jrebel是收費軟體 破解連結如下:http://blog.lanyus.com/archives/317.html 正常啟動後的樣式:
- 對於需要熱部署的專案進行如下操作 右擊專案名稱 選中jrebel生成配置檔案 正確的配置檔案內容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!--
This is the JRebel configuration file. It maps the running application to your IDE workspace, enabling JRebel reloading for this project.
Refer to https://manuals.zeroturnaround.com/jrebel/standalone/config.html for more information.
-->
<application generated-by="intellij" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.zeroturnaround.com" xsi:schemaLocation="http://www.zeroturnaround.com http://update.zeroturnaround.com/jrebel/rebel-2_1.xsd">
<classpath>
<dir name="C:/workspaces***************/target/classes"> <!--為專案的編譯路徑-->
</dir>
</classpath>
<web>
<link target="/">
<dir name="C:/workspace**********src/main/webapp"><!--為專案的路徑-->
</dir>
</link>
</web>
</application>
複製程式碼
- 在idea選單欄中 選中view >tool 如下 將兩個工具欄均展示出來:
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>8.1.16.v20140903</version>
<configuration>
<stopKey>stop</stopKey>
<stopPort>9999</stopPort>
<scanIntervalSeconds>0</scanIntervalSeconds><!--使用jetty自身的熱部署:1 不用為0-->
<contextXml>${project.basedir}/src/main/resources/jetty-context.xml</contextXml>
<webApp>
<contextPath>/</contextPath>
</webApp>
<connectors>
<connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">
<port>8001</port>
<maxIdleTime>60000</maxIdleTime>
</connector>
</connectors>
</configuration>
</plugin>
複製程式碼
-
當點選jrebel debug時 啟動log出現如下圖內容則標誌著配置成功
-
啟動之後體驗一下熱部署吧 針對單個檔案進行的熱部署: ctrl+shift+f9 針對修改的所有檔案進行的熱部署: ctrl+f9 執行之前別忘記ctrl + s
-
當執行上面的命令是 出現如下的內容 則表示部署成功:
未經作者允許 請勿轉載,謝謝 :)