java - 将jar库添加到Maven项目

标签 java maven jar

我有一个用 Maven 开发的项目。我想将新的 jar 文件添加到类路径中。我在 pom.xml 文件中添加了新的依赖项:

<dependency>
<groupId>mzmatch</groupId>
<artifactId>mzmatch</artifactId>
<version>1.2.13</version>
</dependency>

所有的jar库都在lib目录下。所有库的名称都与 artifactId-version.jar 匹配,它们的位置是(在 lib 目录内)groupId/artifactId/version。所以我对我的 mzmatch-1.2.13.jar 文件做了同样的事情。

除了在 pom 文件中添加新的依赖项之外,我还在 Manifest.MF 文件中将我的 jar 添加到类路径中。但是软件仍然看不到我的 jar 。我还应该做什么?或者我没有正确添加我的库?

最佳答案

我假设这是您开发的 jar,现在希望 Maven 将其作为依赖项获取。为此,您需要将它安装到本地 Maven 存储库。不是项目的 lib 目录,而是 .m2 目录(在 Windows 中可能位于主目录之外)。您可能想从命令行运行它:

mvn install:install-file -Dfile=<path-to-file> -DgroupId=mzmatch -DartifactId=mzmatch -Dversion=1.2.13 -Dpackaging=jar

查看 here 了解更多信息。

编辑 1:我假设 OP 不在更大的团队中工作。如果开发团队中的任何其他人都需要依赖项,则需要将其部署到共享的内部 Artifact 存储库,例如 NexusArtifactory 。这些应用程序有一个用于上传 Artifact 的页面。

编辑 2:在您的 pom.xml 中添加一个库作为依赖项,确保 Maven 在为这个新项目编译代码时将它放在类路径中。如果您希望它在运行时存在(例如,如果您想要一个可执行 jar),并且您希望将它放在 MANIFEST.MF 的类路径条目中,那么您可以使用 Maven set it up。这仍然没有将 mzmatch-1.2.13.jar 文件放在与您的新项目相同的目录中。如果您不想手动执行此操作,Maven 也可以 do it for you

关于java - 将jar库添加到Maven项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11992410/

相关文章:

java - 在 Java 中区分 ESTALE 和 ENOENT 的最佳方法

java - 使用 JPQL 更新数据库中的一列

java - 如何修复android中编辑文本的 double 值的最小值和最大值?

java - Maven 站点(Maven 3)生成空站点文件夹

外部库的 java.lang.NoClassDefFoundError

java - 如何使用 netbeans dist 分发 Java3d jar 文件?

java - 正则表达式某些字符可以存在或不存在,但之后什么都没有

maven - 在 liferay maven portlet 中将资源-操作-映射放在哪里

java - 将自定义标签添加到 jar list

java - 启动外部 JAR 文件需要什么,例如 Minecraft 启动器?