先說正常的步驟,在這工程中踩坑很多,各種bug,最後說一下解決辦法
1、settings------------->plugins------------>下載jrebel插件----------------->下載完成重啓idea
2、重啓後settings----------------->jrebel
選中springboot1.x
將jar包發送到服務器上,在服務器上執行 java "-agentpath:[JRebel的根目錄]/lib/libjrebel64.so" -Drebel.remoting_plugin=true -jar [你的springboot jar包]
mvn spring-boot:run -Drun.jvmArguments="-agentpath:[JRebel的根目錄]/lib/libjrebel64.so -Drebel.remoting_plugin=true"
3、添加一個遠程服務器
直接更新點擊更新遠程服務器上的jar包
4、至此按理說應該是upload成功的,也就是同步成功的,但是仍有很多bug
遇到的問題
1、
2、Warning: Cannot find a project with ID 'com.geekq.miaosha' on this remote server. Maybe it is not deployed, or project's ID in rebel-remote.xml is different on the server.
解決方案
找不到前綴爲spring-boot的插件,查閱網上資料有幾個解決方案
https://blog.csdn.net/cyd_shuihan/article/details/77676556(這裏總結的比較全面)
大意運行mvn spring-boot:run -Drun.jvmArguments="-agentpath:[JRebel的根目錄]/lib/libjrebel64.so -Drebel.remoting_plugin=true"時候一定要將其放在pom目錄下
這個說法很奇怪!!我在服務器上打得是jar包,你讓我在pom.xml所在目錄下進行操作,我顯然不知所措,於是又找了半天解決方案還沒有解決問題,我突發奇想既然要放到pom.xml下,那我乾脆把pom.xml放到服務器試一試,繼續執行mvn命令的時候,我發現在下載完各種依賴包之後一直缺少某些包,結合報錯以及
我發現它肯定是從jar包中沒有找到springboot的資源文件,對比pom.xml需要直接發送到服務器,我乾脆直接吧src複製到了服務器上,重新在進行mvn命令,發現突然跑通了
測試
添加一個接口,並不進行遠程部署
直接訪問遠程是或否有進行熱部署
到現在我也不是很懂爲什麼,歡迎大家討論交流