使用 Weblogic (beadep) 说“在服务器上运行”时未正确生成 application.xml

2024-04-28

我在使用过程中总会遇到以下情况“在服务器上运行”在我的马化EAR项目。

情况

如果我对 EAR 项目执行以下步骤:

  • mvn 干净安装
  • 在服务器上运行

...将导致:

The 应用程序.xml产生于Maven将是正确的:

<application xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_5.xsd" version="5">
  <display-name>com.company.fbps.api.impl.ear</display-name>
  <module>
    <ejb>com.company.fbps.api.impl.ejb-0.0.1-SNAPSHOT.jar</ejb>
  </module>
</application>

而 EJB 项目“com.company.fbps.api.impl.ejb”是 EAR 项目的 Maven 依赖项:

(在“com.company.fbps.api.impl.ejb”pom.xml中)

<dependency>
    <groupId>com.company.fbps.api.impl.ejb</groupId>
    <artifactId>com.company.fbps.api.impl.ejb</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <type>ejb</type>
</dependency>

...但是应用程序.xml产生于在服务器上运行是不正确的:

The Oracle WebLogic 服务器插件将生成一个应用程序.xml to:

...\.metadata\.plugins\org.eclipse.core.resources\.projects\com.company.fbps.api.impl.ear\beadep\fbp_local_test\com.company.fbps.api.impl.ear\split_src

.... 具有错误的 EJB jar 名称:

<application xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_5.xsd" version="5">
  <display-name>com.company.fbps.api.impl.ear</display-name>
  <module>
    <ejb>com.company.fbps.api.impl.ejb.jar</ejb>
  </module>
</application>

所以在这个过程中一些集成并没有意识到Maven生成了不同的事实ejb.jar名称,这不用于“在服务器上运行”。

解决方法

我找到了一个解决方法来让它以某种方式运行。 如果你说"Maven - Update Project Configuration ..." before "Run on Server"它有效一次。 但在下一次构建后将再次损坏。

使用的插件

  • 适用于 Eclipse 的 Oracle WebLogic Server 工具 11.1.1.8.0
  • m2e - Eclipse 1.0.100.20110804-1717 的 Maven 集成

Question

您知道如何在不使用我的解决方法的情况下纠正这种情况吗?


我用weblogic-maven-插件 http://mojo.codehaus.org/weblogic-maven-plugin/将我的耳朵部署到 weblogic。下面是 pom.xml 中的示例配置。这应该在你的耳朵项目 pom 中。确保正确添加依赖项,依赖项在 Maven 存储库中不可用。我必须手动安装它们,并且 wlfullclient.jar 必须使用weblogic jarbuilder http://docs.oracle.com/cd/E12840_01/wls/docs103/client/jarbuilder.html正确设置配置后,创建一个目标为 weblogic:deploy 的 Maven 构建运行配置。这应该会将工件部署到您的 weblogic 服务器。

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>weblogic-maven-plugin</artifactId>
<version>2.9.1</version>
<configuration>
  <adminServerHostName>localhost</adminServerHostName>
      <adminServerPort>7001</adminServerPort>
  <userId>${username}</userId>
  <password>${password}</password>
  <upload>false</upload>
  <remote>false</remote>
  <verbose>false</verbose>
  <debug>true</debug>
  <targetNames>${server}</targetNames>
  <exploded>false</exploded>
  </configuration>
<dependencies>
  <dependency>
   <groupId>weblogic</groupId>
   <artifactId>weblogic</artifactId>
   <version>${weblogic.version}</version>
     </dependency>
 <dependency>
  <groupId>weblogic</groupId>
  <artifactId>wlfullclient</artifactId>
  <version>${weblogic.version}</version>
</dependency>
<dependency>
 <groupId>weblogic</groupId>
 <artifactId>webservices</artifactId>
 <version>${weblogic.version}</version>
    </dependency>
<dependency>
 <groupId>org.apache.xmlbeans</groupId>
 <artifactId>xmlbeans</artifactId>
 <version>2.3.0</version>
   </dependency>
  </dependencies>
 </plugin>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Weblogic (beadep) 说“在服务器上运行”时未正确生成 application.xml 的相关文章

随机推荐