gpt4 book ai didi

java - Maven 依赖项 :list includeParents

转载 作者:行者123 更新时间:2023-11-30 08:32:15 25 4
gpt4 key购买 nike

我对依赖的选项“includeParents”有点困惑:Maven 依赖插件的列表目标

http://maven.apache.org/plugins/maven-dependency-plugin/list-mojo.html

在我看来,pom 本身的父级包含在列表中(我的意思是我们应用目标的项目 pom 的父级)。真的是这样还​​是我犯了什么错误?如果是这样,有没有办法同时获取项目的父 pom?

示例:

我使用了来自 MavenCentral 的 org.sonatype.plugins:sisu-maven-plugin:1.4 的 pom。它包含对父级的引用

<parent>
<groupId>org.sonatype.plugins</groupId>
<artifactId>plugins-parent</artifactId>
<version>9</version>
</parent>

但是 mvn dependency:list -DincludeParents=true 的结果是:

javax.inject:javax.inject:jar:1:compile
org.apache.maven:maven-artifact-manager:jar:2.0.8:compile
javax.annotation:jsr250-api:jar:1.0:compile
com.google.code.findbugs:jsr305:jar:1.3.9:compile
org.eclipse.sisu:org.eclipse.sisu.inject:jar:0.2.0:compile
org.apache.maven:maven-model:jar:2.0.8:compile
org.apache.maven:maven-plugin-registry:jar:2.0.8:compile
org.sonatype.sisu:sisu-guice:jar:no_aop:3.1.6:compile
org.apache.maven:maven-project:jar:2.0.8:compile
org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-44:compile
org.apache.maven:maven-settings:jar:2.0.8:compile
aspectj:aspectjrt:jar:1.5.3:compile
junit:junit:jar:4.8.2:test
org.apache.maven:maven-repository-metadata:jar:2.0.8:compile
org.sonatype.sisu:sisu-inject-bean:jar:2.5.3:compile
com.google.guava:guava:jar:11.0.2:compile
org.apache.maven.shared:maven-common-artifact-filters:jar:1.4:compile
org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2:compile
org.apache.maven:maven-artifact:jar:2.0.8:compile
org.codehaus.plexus:plexus-utils:jar:3.0.15:compile
javax.enterprise:cdi-api:jar:1.0:compile
org.apache.maven:maven-plugin-api:jar:2.0:compile
org.apache.maven:maven-profile:jar:2.0.8:compile
org.codehaus.plexus:plexus-classworlds:jar:1.2-alpha-10:compile

最佳答案

参数includeParentsMaven Dependency Plugin 的 2.8 版中引入:

Include parent poms in the dependency resolution list. [...]

  • Since: 2.8

但是,您在其上启动此命令的特定 Maven 项目声明了插件的 2.2 版。以下是我如何跟踪它:sisu-maven-plugin-1.4 has as parent org.sonatype.plugins:plugins-parent:9 , 它本身有一个父级 org.sonatype.forge:forge-parent:12 ,最终声明 version 2.2 of the plugin ... Maven 将更喜欢使用该版本,因为它直接在项目的 POM 中声明。

请注意,您也可以在日志中发现这一点。在此项目上运行命令时,日志为:

[INFO] Building Sisu Maven Plugin 1.4
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-dependency-plugin:2.2:list (default-cli) @ sisu-maven-plugin ---
[INFO]

显示使用的是 2.2 版。

因此,您只需要强制使用大于 2.8 的版本,让 includeParents 参数生效,例如使用当前最新的 2.10:

mvn org.apache.maven.plugins:maven-dependency-plugin:2.10:list -DincludeParents

关于java - Maven 依赖项 :list includeParents,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40220826/

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