当前位置: 首页 > 知识库问答 >
问题:

的POM无效,传递依赖项(如果有)将不可用

钱毅
2023-03-14
Framework
|  -- Apache Commons Math 3.0
|  -- Bouncy Castle 1.5
|  -- etc.. (lots more)
|________
|        Client
|        | -- GUI libraries
|        | -- etc.
|
|________
         Server
         | -- Server Libraries
         | -- etc.
Invalid POM for de.r2soft.empires.framework:Framework:jar:Alpha-1.2, 
transitive dependencies (if any) will not be available, 
enable debug logging for more details 

下面是我在Pastebin上的框架-pom.xml和客户机-pom.xml:

共有1个答案

林修真
2023-03-14

出现这种情况的一个原因是,当您依赖于父pom已过时的项目时。如果在没有安装/部署父pom的情况下更新父pom,则经常会发生这种情况。

要查看是否是这种情况,只需使用MVN dependency:tree-x运行并搜索确切的错误。它会提到它错过了父pom中的东西,而不是您所依赖的工件中的东西(例如jar版本)。

修复非常简单:使用MVN install-n安装父pom,然后重试

 类似资料:
  • 我给ivy添加了一个依赖项(我们称之为a)。在maven central中具有pom文件的xml。Ivy使用ibiblio来解析maven依赖项。添加到常春藤中的依赖项(A)。xml具有可传递依赖项(B)。到目前为止,一切都很好。传递依赖(B)的依赖(C)不能用常春藤来解决。 我在常春藤上定义了一个新的名字。如下所示的xml: 在B的pom文件中,C在编译和测试范围中定义如下: 当我在ivy的缓存

  • 我的项目有一些依赖项(真的很多),我正在依赖项中添加它们。但是我不想要任何传递依赖项,这将超出我的控制范围(maven给我带来了几乎三倍于我需要的东西)。我试图通过以下方式禁止传递依赖项: 但是在我做了一个mvn包之后,传递依赖项仍然被下载并添加到我构建的包中。这是maven的日志记录: 所以这不是我想要的。我想要maven不要自动下载传递依赖项,或者不要将它们添加到我的“mvn包”中。 感谢任何

  • 当我有一个包含POM的项目时,例如: 但是我似乎弄错了,Internet上的Maven文档并没有帮助我解决这个问题。 有什么想法吗?

  • 我是maven的新手。(我已经搜索了几个小时的答案,但没有运气。mvn依赖:复制依赖不能解决我的问题)我需要复制项目的所有依赖项(以jar的形式),如果我的一个jar依赖于另一个工件,也复制该工件。 示例project1 pom。xml: “project1”依赖于project2。人工制品罐子当我使用“mvn依赖项:复制依赖项”时,我得到了project2。人工制品但我没有得到project3。

  • 一些stackoverflow帖子暗示我的类路径中有spring-asm的冲突版本。通过gradle依赖分析,我看到我没有spring-asm的多个版本,但我有spring-core的多个版本(版本3.1.4和5.0.2) 我试图排除3.1.4版本,但无法使其工作。我试图在依赖级别和配置级别都排除它。 即使有了上述更改,我仍然在依赖分析输出中发现Spring-Core:3.1.4.Release。

  • 这个问题将澄清什么是传递依赖,以及它在Maven中如何在非常高的级别上工作。 我的定义是:在依赖树中,比如-- 若C在B中有范围编译,那个么将B声明为A的依赖项就足以用Maven构建A。但是,如果C在B中提供了作用域,那么当Maven构建A时,除非A在其依赖项中声明C,否则该构建不会根据C自动编译A。 这是正确的吗?