我有IBM Liberty服務器在我的機器上運行,並且想要使用相應的maven插件重新部署我的WAR。如何用liberty-maven-plugin重新部署工件?
該文件說明有目標,如deploy
,undeploy
,install-apps
。目前我使用
<plugin>
<groupId>com.ibm.websphere.wlp.maven.plugins</groupId>
<artifactId>liberty-maven-plugin</artifactId>
<version>1.1</version>
<executions>
<execution>
<id>install-apps</id>
<phase>install</phase>
<goals>
<goal>install-apps</goal>
</goals>
</execution>
</executions>
<configuration>
<serverHome>c:/my-liberty-instance</serverHome>
<serverName>myServerName</serverName>
</configuration>
</plugin>
但由於它需要之前必須停止服務器實例它不是爲我好。如果它正在運行 - 部署了一個新的WAR(它取代了舊的WAR),但沒有發現新的更改。
我試過使用deploy
的目標,但是一旦它將WAR複製到dropins
目錄中,它就會開始搜索某些console.log文件中的某些行,該行應指示應用是否已啓動並失敗。
示例undeploy
目標:CWWKM2022E: Failed to undeploy application app-1.0-SNAPSHOT.war. The Stop application message cannot be found in console.log.
但是,同樣的信息會顯示deploy
,stop-server
。
有沒有一種方便的方式來使用liberty-maven-plugin重新部署WAR,我不需要重啓服務器? 我只想構建一個新的WAR - 部署它;希望服務器趕上變化,就是這樣。
它的工作原理,但服務器沒有趕上新的變化。我的意思是我更改代碼,構建新的WAR,部署(我可以在下拉列表中看到更新的WAR),但Liberty不實際重新部署它。我需要重新啓動服務器才能部署我的更改。如果我先刪除舊的WAR,請手動粘貼一個新的WAR - 一切正常,但插件僅替換WAR文件,Liberty在該情況下不會重新部署。 – john
你在server.xml中配置了applicationMonitor嗎?如果這樣做,則需要將updateTrigger設置爲其默認值。 '''' –
patricktiu
真的有幫助。謝謝 ! – john