gpt4 book ai didi

java - 如何在 Maven Web 项目中捆绑/打包最新版本的自定义库而不更新 pom.xml?

转载 作者:太空宇宙 更新时间:2023-11-04 11:08:07 26 4
gpt4 key购买 nike

我有一个自定义库 - Dao.jar,其中包含数据库持久化逻辑。
每次代码发生更改时,我都会使用新版本将此 jar 推送到 Artifact ,如下所示:

mvn install:install-file -Dfile=C:\*****\target\Dao.jar -DgroupId=non-public.com.karthik -DartifactId=dao -Dversion=2.0 -Dpackaging=jar

我有另一个 Maven Web 项目,它依赖于这个 jar。该 jar 也打包/捆绑在 maven webapp 项目/war 中。

<dependency>
<groupId>non-public.com.karthik</groupId>
<artifactId>dao</artifactId>
<version>2.0</version>
</dependency>

目前,我正在更改 pom.xml 中 dao 依赖项的版本,并在每次 Artifact 中出现新版本的 Dao.jar 时重新构建 maven webapp 项目。
是否有任何选项可以使用最新版本的 Dao.jar 构建 maven 项目,而无需手动更改 pom.xml 中的依赖项版本?

最佳答案

当 Maven 搜索依赖项时,它首先检查本地存储库 (~/.m2/repository)。如果没有找到,它会尝试其他资源,例如 POM 文件或设置文件 (~/.m2/settings.xml) 中定义的远程存储库。

按照这个逻辑,如果您尝试使用尚未安装到本地存储库的本地项目版本,Maven 将永远无法找到它以在另一个项目中使用。

避免一直更改版本号并手动构建两个项目。您可以为这两个项目创建一个父 POM。然后,父项目将能够认识到其中一个子项目依赖于另一个子项目,并以正确的顺序构建它们。

关于java - 如何在 Maven Web 项目中捆绑/打包最新版本的自定义库而不更新 pom.xml?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46273101/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com