【发布时间】:2017-05-24 03:31:34
【问题描述】:
我有一个在 WebSphere liberty 中运行的应用程序。通过 mvn install 命令,我需要将我的应用程序部署到 liberty apps 目录,因为我没有使用 dropins 目录。
Bellow 是我可以部署到 dropins 目录的工作 maven 插件代码。
<plugin>
<groupId>net.wasdev.wlp.maven.plugins</groupId>
<artifactId>liberty-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<id>start-server</id>
<phase>pre-integration-test</phase>
<goals>
<goal>start-server</goal>
</goals>
<configuration>
<verifyTimeout>60</verifyTimeout>
</configuration>
</execution>
<execution>
<id>deploy</id>
<phase>install</phase>
<goals>
<goal>deploy</goal>
</goals>
</execution>
</executions>
<configuration>
<serverHome>${wlp.dir}</serverHome>
<serverName>${server}</serverName>
<appArtifact>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
<type>${project.packaging}</type>
</appArtifact>
<appDeployName>${project.artifactId}.${project.packaging}</appDeployName>
</configuration>
</plugin>
我在任何地方都找不到需要添加/更改哪些配置才能将应用程序直接部署到应用程序目录。有人可以让我知道这里缺少什么吗?
【问题讨论】:
-
基于 github repo doc (github.com/WASdev/ci.maven/blob/master/docs/deploy.md#deploy) 听起来只能部署到
dropins。为什么需要部署到apps目录而不是dropins?共享库什么的? -
是的。我不能共享库,这会导致我的应用程序出现一些问题。因此我别无选择,只能使用应用程序目录
-
您可以将共享库应用到“dropin 应用程序”,方法是将 jar 放在以下位置:
${shared.config.dir}/lib/global或${server.config.dir}/lib/global。请参阅此文档:ibm.com/support/knowledgecenter/SSAW57_8.5.5/… -
我一直在使用 ${shared.config.dir}/lib/global,直到遇到错误 oracle/sql/ArrayDescriptor。它是由 ojdbc6.jar 引起的。一旦我将应用程序放入应用程序文件夹并在 server.xml 中手动将 libs 目录配置分配给应用程序并在 server.xml 中使用相同的 libs 目录配置来创建数据源,问题就解决了。
标签: maven ant maven-plugin websphere-liberty liberty-maven-plugin