【问题标题】:Including dependency from imported maven library包括来自导入的 maven 库的依赖项
【发布时间】:2020-03-15 13:23:54
【问题描述】:

在 Gradle/maven 上有点模糊,但大体上是这样的。

我有一个 Web 应用程序,它使用公共库 (A) 作为依赖项,源代码在 com.mydomain.utils 包下实现。在不同的命名空间 com.mydomain.legacy 下编写了另一个遗留包 (B),我希望将其包含在 A 中,这样当我在主应用程序中包含 A 作为依赖项时,可以正常解析库 B 的资源:

import com.mydomain.legacy.someutility

【问题讨论】:

  • 导入与库依赖和下载完全无关。它所做的只是允许您在源代码中使用 List 而不是 java.util.List。如果 A 在 Maven 存储库中发布,并且在其发布的 pom.xml 中的依赖项中有 B,那么在 Maven/gradle Web 应用程序项目中添加对 A 的依赖项也会带来其 B 依赖项。
  • 包 (B) 是库 (A) 的一部分吗?如果不是,包 (B) 是否可用作 Maven 依赖项?如果您可以发布一些示例 pom.xml,这将对我们非常有帮助。
  • 你能用maven构建A吗?

标签: java maven gradle


【解决方案1】:

如果 B 是 A 的依赖项,并且 A 是 maven 工件,则 B 已经包含在 A 中,否则将无法构建 A。

如果 B 不是 A 的依赖项,那么您需要将 A 和 B 都列为项目的依赖项。

【讨论】:

  • 不,库不包含它们所依赖的库的代码。也许这不是你的意思,但你的术语令人困惑。
  • 我从来没有说过代码。如果 B 是 A 的依赖,那么它在 A 的 pom.xml 中列出。这意味着 A 可以获取 B 的库,否则,A 无法构建。
  • 您说“那么 B 包含在 A 中”。这非常令人困惑。
  • 它作为依赖包含在 pom.xml 中。这就是 maven 的工作原理。
  • 对不起。这确实令人困惑。我的意思是神器。你现在可以修正你的答案吗?
猜你喜欢
  • 2019-11-19
  • 2016-06-07
  • 1970-01-01
  • 2023-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-28
  • 1970-01-01
相关资源
最近更新 更多