Maven 只需替换远程存储库中的 1 个依赖项

发布于 2024-12-08 08:38:05 字数 391 浏览 0 评论 0原文

首先我想说我对maven完全陌生。所以这是我的问题:

我刚刚分叉了一个使用 maven 的开源项目(我们称之为项目 A)。在 pom.xml 中定义了一个远程存储库(由项目 A 的原作者维护),它从那里获取几个 .jar 文件,因为它们是依赖项。我在我分叉的项目中调整了一些东西,一切正常,我可以编译并运行它。

我的问题是,虽然我刚刚发现我必须更改其中一个依赖项中的某些内容,幸运的是该依赖项也是开源的,所以我也分叉了它并进行了所需的调整(项目 B,也是一个 Maven 项目)并编译它,到目前为止一切正常。我现在遇到的问题是:如何告诉maven它必须获取我调整后的“项目B”,但在构建项目A时仍然从远程存储库获取其余依赖项?

我尝试使用“系统”范围作为依赖项,但这不起作用,因为它不再在 .jar 中包含“项目 B”。

First of all I want to say that I'm completely new to maven. So here is my question:

I just forked an open-source project which uses maven(let's call it project A). In the pom.xml there is a remote repository defined(maintained by the original authors of project A) and it grabs a couple of .jar files from there because they are dependencies. I adjusted something in the project I forked, and everything works fine, I can compile it and run it.

My problem is though that I just discovered I have to change something in one of the dependencies, luckily that dependency is also open-source, so I forked that too and made the needed adjustments(project B, also a maven project) and compiled it, everything worked fine so far. The problem I have now is: how do I tell maven that it has to grab my adjusted "project B", but still grab the rest of the dependencies from the remote repository when building project A?

I tried to use the "system" scope for the dependency, but that didn't work since it just doesn't include "project B" in the .jar anymore.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

阪姬 2024-12-15 08:38:05

使用新版本剪切已更改库的新版本。然后它会在它能找到的地方自动拾取它。

如果您无法削减官方版本,您可以在本地构建它,并作为奖励将其安装在存储库管理器中。

并且不要使用系统范围。

Cut a new release of the changed library with a new version. Then it will automatically pick it up whereever it can find it.

If you can not cut an official release you can build it locally and as a bonus install it in a repository manager.

And do NOT use system scope.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文