通常,您无法在构建运行之前生成列表...问题是基于 pom 模型并没有描述所有工件,因为某些插件可以产生补充工件(maven-assembly-plugin、maven-shade-插件,maven-jar-plugin 通过 test-jar 等)
您可以做的是在构建运行后获取生成的工件列表..(安装)。你的问题启发了我实现一个 EventSpy,它在构建结束时生成这样的列表......看起来像这样:
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.423 s
[INFO] Finished at: 2016-05-08T13:22:10+02:00
[INFO] Final Memory: 24M/310M
[INFO] ------------------------------------------------------------------------
[INFO] -- Maven Artifact Collector Summary --
[INFO] ------------------------------------------------------------------------
[INFO] test.maven.plugin.profiler:parse-pom:0.1.0-SNAPSHOT:jar
[INFO] test.maven.plugin.profiler:parse-pom:0.1.0-SNAPSHOT:pom
[INFO] test.maven.plugin.profiler:parse-pom:0.1.0-SNAPSHOT:jar:jar-with-dependencies
我能做的是增强它并编写一个包含信息的文件(或多或少任何格式)......目前它只是一个 PoC......也许你可以提供更多信息或创建问题或 PR并请求可能需要的东西......也许这对其他人来说也很有趣......
此外,您的下游部分必须在可用的存储库缓存中具有这些工件(在文件系统上或通过存储库管理器或 docker 数据容器)...