如何使用 liberty-maven-plugin 重新部署工件?
How to redeploy artifact with liberty-maven-plugin?
我的机器上有 IBM Liberty 服务器 运行,我想使用相应的 maven 插件重新部署我的 WAR。
文档说有 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 (它取代了旧的)但没有赶上新的变化。
我尝试使用 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 - 部署它;希望服务器赶上变化,仅此而已。
您可以使用 install-apps 目标来安装项目 war 文件,而无需停止 liberty 服务器实例。但是你需要使用 liberty-maven-plugin 版本 1.3 or above
,并且还要在插件配置中包含 <installAppPackages>project</installAppPackages>
。
<plugin>
<groupId>net.wasdev.wlp.maven.plugins</groupId>
<artifactId>liberty-maven-plugin</artifactId>
<version>1.3</version>
<executions>
<execution>
<id>install-apps</id>
<phase>install</phase>
<goals>
<goal>install-apps</goal>
</goals>
</execution>
</executions>
<configuration>
<installDirectory>c:/my-liberty-instance</installDirectory>
<serverName>myServerName</serverName>
<installAppPackages>project</installAppPackages>
</configuration>
</plugin>
我的机器上有 IBM Liberty 服务器 运行,我想使用相应的 maven 插件重新部署我的 WAR。
文档说有 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 (它取代了旧的)但没有赶上新的变化。
我尝试使用 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 - 部署它;希望服务器赶上变化,仅此而已。
您可以使用 install-apps 目标来安装项目 war 文件,而无需停止 liberty 服务器实例。但是你需要使用 liberty-maven-plugin 版本 1.3 or above
,并且还要在插件配置中包含 <installAppPackages>project</installAppPackages>
。
<plugin>
<groupId>net.wasdev.wlp.maven.plugins</groupId>
<artifactId>liberty-maven-plugin</artifactId>
<version>1.3</version>
<executions>
<execution>
<id>install-apps</id>
<phase>install</phase>
<goals>
<goal>install-apps</goal>
</goals>
</execution>
</executions>
<configuration>
<installDirectory>c:/my-liberty-instance</installDirectory>
<serverName>myServerName</serverName>
<installAppPackages>project</installAppPackages>
</configuration>
</plugin>