WebLogic Maven插件有太多依赖项?

Ste*_* B. 6 maven weblogic-maven-plugin weblogic12c

我正在使用weblogic maven插件在服务器上部署我的应用程序.

我不确定我是否在配置上犯了错误.当天的第一个maven构建需要很长时间(约30分钟),因为插件似乎对完整的weblogic堆栈具有大量依赖性并且更新maven-metadata.xml文件.

我的配置如下所示:

<plugin>
  <groupId>com.oracle.weblogic</groupId>
  <artifactId>weblogic-maven-plugin</artifactId>
  <version>12.1.3-0-0</version>
  <configuration>
    <adminurl>t3://localhost:7001</adminurl>
    <user>admin</user>
    <password>pass</password>
    <upload>true</upload>
    <action>deploy</action>
    <remote>false</remote>
    <verbose>true</verbose>
 <source>${project.build.directory}/${project.build.finalName}.${project.packaging}</source>
    <name>${project.build.finalName}</name>
    <targets>myserver</targets>
  </configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)

也许我们的Nexus-repo太慢了.;-)

提前致谢

Den*_*hel 6

我发现了问题,希望有一些很好的解决方案:

注意:我没有使用Nexus-Repo而是使用Artifactory(但我猜Maven在两者上都表现相同).

由于我们的存储库配置错误,问题出现了.如果您的库位于快照存储库(在settings.xml中定义),Maven将始终检查更新(默认情况下).

在我的例子中,快照的虚拟存储库包含Oracle库,这使得Maven将它们视为快照.

有一些方法可以避免这种情况:

  1. 如果您无法更改设置:

执行maven目标时使用参数"no-snapshot-updates":

mvn goal --no-snapshot-updates
Run Code Online (Sandbox Code Playgroud)
  1. 更改您的settings.xml

将以下内容添加到Oracle库所在的存储库中:

<repository>
    <id>my-oracle-repo</id>
    <url>http://someurl</url>
    <snapshots>
        <enabled>false</enabled>
    </snapshots>
</repository>
Run Code Online (Sandbox Code Playgroud)
  1. 将Oracle库从快照存储库移开.

编辑:它似乎不仅与快照有关,而且与默认设置为"每日"的"updatePolicy"有关.更改您的maven settings.xml,如下所示:

<repository>
    <id>my-oracle-repo</id>
    <url>http://someurl</url>
    <snapshots>
        <enabled>false</enabled>
    </snapshots>
    <releases>
        <updatePolicy>never</updatePolicy>
    </releases>
</repository>
Run Code Online (Sandbox Code Playgroud)