使用mule-domain-maven-plugin发布时进行双重上传 - java

我正在尝试使用mule-domain-maven-plugin释放Mule域。我在调用安装时注意到,已经安装了主要的* .zip工件,然后是* .pom,然后是* .zip的第二个副本:

[INFO] --- maven-install-plugin:2.5.2:install (default-install) @ esb-common ---
[INFO] Installing /Users/chase/git/dn2k/dn2k-esb/esb-common/target/esb-common-2.6.7.0.zip to /Users/chase/.m2/repository/com/dn2k/esb-common/2.6.7.0/esb-common-2.6.7.0.zip
[INFO] Installing /Users/chase/git/dn2k/dn2k-esb/esb-common/pom.xml to /Users/chase/.m2/repository/com/dn2k/esb-common/2.6.7.0/esb-common-2.6.7.0.pom
[INFO] Installing /Users/chase/git/dn2k/dn2k-esb/esb-common/target/esb-common-2.6.7.0.zip to /Users/chase/.m2/repository/com/dn2k/esb-common/2.6.7.0/esb-common-2.6.7.0.zip

也许有些奇怪,但无害。

但是,尝试释放时,遵循类似的顺序。首先将主要* .zip工件上传到Nexus,然后将* .pom,然后是maven-metadata.xml上传,最后是第二个主要* .zip工件副本:

[INFO] Uploading: http://<hostname>/nexus/content/repositories/releases/com/dn2k/esb-common/2.6.7.0/esb-common-2.6.7.0.zip
[INFO] Uploaded: http://<hostname>/nexus/content/repositories/releases/com/dn2k/esb-common/2.6.7.0/esb-common-2.6.7.0.zip (2 KB at 7.7 KB/sec)
[INFO] Uploading: http://<hostname>/nexus/content/repositories/releases/com/dn2k/esb-common/2.6.7.0/esb-common-2.6.7.0.pom
[INFO] Uploaded: http://<hostname>/nexus/content/repositories/releases/com/dn2k/esb-common/2.6.7.0/esb-common-2.6.7.0.pom (2 KB at 6.7 KB/sec)
[INFO] Downloading: http://<hostname>/nexus/content/repositories/releases/com/dn2k/esb-common/maven-metadata.xml
[DEBUG] Could not find metadata com.dn2k:esb-common/maven-metadata.xml in dn2k-deployment (http://<hostname>/nexus/content/repositories/releases/)
[DEBUG] Writing tracking file /Users/myron/.m2/repository/com/dn2k/esb-common/resolver-status.properties
[INFO] Uploading: http://<hostname>/nexus/content/repositories/releases/com/dn2k/esb-common/maven-metadata.xml
[INFO] Uploaded: http://<hostname>/nexus/content/repositories/releases/com/dn2k/esb-common/maven-metadata.xml (302 B at 1.4 KB/sec)
[DEBUG] Using transporter WagonTransporter with priority -1.0 for http://<hostname>/nexus/content/repositories/releases/
[DEBUG] Using connector BasicRepositoryConnector with priority 0.0 for http://<hostname>/nexus/content/repositories/releases/ with username=admin, password=***
[INFO] Uploading: http://<hostname>/nexus/content/repositories/releases/com/dn2k/esb-common/2.6.7.0/esb-common-2.6.7.0.zip
^^^^ ERRORS OUT ^^^^

在第二次上传时,Nexus表现不佳,因为我们将其配置为禁止同一发布工件的多次上传。

在source code for the plugin中,第88行将zip文件标识为主要工件,而上方仅一行将同一文件标识为附件。这种双重标识是导致maven-install-plugin对〜/ .m2 / repository进行双重复制的原因,如上所示。

这是一个错误,还是我无法正确配置插件?有没有人有使用mule-domain-maven-plugin成功发布的示例?

这是esb-common(域)项目的pom(插件的版本管理为1.1):

  <?xml version="1.0" encoding="UTF-8"?>
  <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

     <modelVersion>4.0.0</modelVersion>
     <groupId>com.dn2k</groupId>
     <artifactId>esb-common</artifactId>
     <packaging>mule-domain</packaging>

     <parent>
        <groupId>com.dn2k</groupId>
        <artifactId>esb-parent</artifactId>
        <version>2.6.7.0</version>
     </parent>

     <build>
        <plugins>
           <plugin>
              <groupId>org.mule.tools.maven</groupId>
              <artifactId>mule-domain-maven-plugin</artifactId>
              <extensions>true</extensions>
           </plugin>
        </plugins>
     </build>

  </project>

参考方案

我为Mulesoft团队提起了诉讼。他们现在修理了我的票。这显然是一个错误。幸运的是,如果我使用最新的Mule版本和Mule插件,我将不再收到这些多余的安装消息。

[INFO] Installing C:\project\workspaces\workspace_mule\zzzz\pom.xml to C:\Users\charmin\.m2\repository\com\mycompany\zzzz\1.0.0-SNAPSHOT\zzzz-1.0.0-SNAPSHOT.pom
[INFO] Installing C:\project\workspaces\workspace_mule\zzzz\target\zzzz-1.0.0-SNAPSHOT.zip to C:\Users\charmin\.m2\repository\com\mycompany\zzzz\1.0.0-SNAPSHOT\zzzz-1.0.0-SNAPSHOT.zip

Maven:从jar工件中排除生成的源 - java

Duplicate,但没有答案,无法评论背景信息:我有一个模块,该模块使用xmlbeans-maven-plugin从xsd生成Java源文件并将其编译到其自己的jar中。这可以正常工作,并使用Java源代码创建一个module1 / target / generated-sources文件夹。该模块已构建,但生成的源包含在jar中,这是不必要的,因为xml…

使用依赖管理访问Maven属性 - java

我正在使用maven的依赖项管理将POM导入到项目Y中,如下所示:<dependencyManagement> <dependencies> <dependency> <groupId>com.abc</groupId> <artifactId>X</artifactId> …

在集成测试阶段执行Maven模块 - java

我想启动一个同级Maven 3模块,该模块在我的一个Maven模块中充当应用程序服务器,以对系统运行集成测试。我的maven项目看起来与此类似:父模块模块A模块B现在,我想在Maven的集成前测试阶段中启动“模块A”,然后运行模块B中包含的所有集成测试。我设法在模块B中运行了集成测试,但是没有找到“光滑”的方法在集成前测试阶段启动模块B。最佳做法是什么?使用…

在Maven构建之前如何运行课程? - java

为什么以下原因导致构建失败?我创建了一个应该在maven开始执行构建之前运行的类。 <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>1.5.…

使用play2自动重新加载 - java

这是我的具有maven性质的play2项目:pom.xml以及相关代码:<packaging>play2</packaging> <plugin> <groupId>com.google.code.play2-maven-plugin</groupId> <artifactId>play…