首页 > 解决方案 > 只运行程序集:没有错误的单一目标

问题描述

当我尝试在完整构建后仅运行 assembly:single 时,

mvn -DskipTests -DskipAssembly=true assembly:single

我收到以下错误。

[错误] 无法在项目 assemble 上执行目标 org.apache.maven.plugins:maven-assembly-plugin:3.1.0:single (default-cli):无法创建程序集:工件:my.package:mymodule:bundle: 1.0.0-SNAPSHOT(包含在模块中)没有带有文件的工件。请确保在生成程序集之前运行包阶段。

我在两者之间没有跑干净;所以,我希望组装所需的一切仍然在它应该在的地方。此外,我可以查看我的本地存储库并看到 mymodule 在那里。我在项目组装上有以下配置。skipAssembly部分是为了使程序集插件不会在其他模块上运行。

<configuration>
    <skipAssembly>false</skipAssembly>
    <descriptors>
        <descriptor>src/assembly/bin.xml</descriptor>
    </descriptors>
</configuration>

我尝试单独运行 assembly:single 的原因是因为我使用的是增量模块构建器,它在编译期间在大约两打模块之一上引发 IndexOutOfBoundsException。我可以忍受一个模块没有被重建,我可以使用
-Dmaven.compiler.failOnError=false来确保其余模块的构建,但程序集插件永远不会运行。

标签: mavenmaven-assembly-plugin

解决方案


推荐阅读