我想在jar文件中的清单中添加体现版本行,以反映POM版本号。我一辈子都无法解决如何使用jar插件做到这一点。
这可能吗?
您将使用Maven存档器:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
这会将以下内容添加到清单文件中:
Implementation-Title: ${pom.name}
Implementation-Version: ${pom.version}
Implementation-Vendor-Id: ${pom.groupId}
Implementation-Vendor: ${pom.organization.name}
问题内容: 使用maven-jar-plugin时, 我想向Manifest.mf添加条目, 因此它将包含: Class-Path:。 当我将此条目添加到Pom时: 它将创建具有所有依赖项的Class-Path,例如 : Class-Path:。jar1name.jar jar2name.jar等 不仅仅是 类路径:。 有没有一种方法可以避免maven将所有jar名称添加到Class-Path?
有,它对1)很有效。但是,我找不到一个还包括非maven依赖项的maven插件,例如。 然后是Eclipse插件,它可以工作,但自2009年以来就没有更新过,所以看起来没有维护。另外,我更喜欢在中直接指定的导出方法。 有人能给我指出插件之类的东西来导出所有引用的库(包括案例2)吗?这只需要将它们放入jar并在清单的类路径中引用它们。 谢了!
有一些相关的问题,但它们并没有完全回答这个问题: 在构建之前将jar添加到maven本地存储库 maven-assembly-plugin不添加系统作用域的依赖项
我(终于)能够使用本指南将我的Android库发布到AWS S3 maven存储库。它作为 AAR 而不是 JAR 文件发布,这意味着即使生成的 POM 文件列出了其所有内部依赖项,在将库添加到另一个项目时也会忽略它们。似乎是一个非常普遍的问题。我从中了解到,我只需要在 maven 清单中列出依赖项,但这是如何完成的呢? 我真的是一个新手,所以越简单越好...谢谢! 注意:我也发现了这个问题,所以
如何直接在项目的库源中添加本地jar文件(还不是Maven存储库的一部分)?
问题内容: 如何将本地jar文件添加到Maven项目? 问题答案: 如下所示将JAR安装到本地Maven存储库中: 其中每个都指: :要加载的文件的路径,例如→ :文件应注册的组,例如→ :文件的工件名称,例如→ :文件的版本,例如→ :文件的包装,例如→