【发布时间】:2012-02-18 17:55:40
【问题描述】:
我们使用 git、maven 和 logback。
这意味着日志中的堆栈跟踪显示了包含堆栈跟踪中每一行的 jar 的实现版本(参见http://logback.qos.ch/reasonsToSwitch.html#packagingData 示例)。
因此,如果我们可以将当前构建的 SHA1 打包到正在构建的工件清单中的该字段中,则很容易从 git 中找到确切的源,该源生成包含源中该单独行的工件。
根据http://maven.apache.org/shared/maven-archiver/examples/manifestEntries.html,这样做的方法是在 pom 的 maven-jar-plugin 部分中有一个 <key>value</key> 行。在我的情况下,这意味着
<Implementation-Version>FooBar</Implementation-Version>
导致
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-jar-plugin:2.3:jar (default-jar) on project axsFTP: Unable to parse configuration of mojo org.apache.maven.plugins:maven-jar-plugin:2.3:ja
r for parameter manifest: Cannot find setter, adder nor field in org.apache.maven.archiver.ManifestConfiguration for 'implementationVersion' -> [Help 1]
鉴于我可以从https://github.com/koraktor/mavanagaiata 获取 SHA1,我如何在 MANIFEST.MF 文件中正确设置?
【问题讨论】:
标签: java git maven logback mavanagaiata