wil*_*ilx 8 java maven maven-dependency-plugin
我已将使用的版本maven-dependency-plugin从2.8 更改为2.10.现在,当我跑步时,mvn dependency:tree -Dverbose我看到以下警告:
[WARNING] Using Maven 2 dependency tree to get verbose output, which may be inconsistent with actual Maven 3 resolution
Run Code Online (Sandbox Code Playgroud)
我正在使用的Maven版本是
Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; 2014-02-14T18:37:52+01:00)
Run Code Online (Sandbox Code Playgroud)
-Dverbose输出,但现在他们已经添加了警告?Mag*_*lex 10
您可以在官方文档中找到对您的问题的解释:
verbose是否在序列化依赖关系树中包含省略的节点.请注意,此功能实际上使用Maven 2算法,并且在与Maven 3一起使用时可能会给出错误的结果.
看一下版本2.10 的TreeMojo.java的第245行:
if ( verbose )
{
// verbose mode force Maven 2 dependency tree component use
if ( ! isMaven2x() )
{
getLog().warn( "Using Maven 2 dependency tree to get verbose output, "
+ "which may be inconsistent with actual Maven 3 resolution" );
}
dependencyTreeString =
serializeVerboseDependencyTree( dependencyTreeBuilder.buildDependencyTree( project,
localRepository,
artifactFilter ) );
}
Run Code Online (Sandbox Code Playgroud)
如果不使用maven 2,它实际上会打印警告.
现在查看TreeMojo.java的第243行版本2.8:
if ( verbose )
{
// verbose mode force Maven 2 dependency tree component use
dependencyTreeString =
serializeVerboseDependencyTree( dependencyTreeBuilder.buildDependencyTree( project,
localRepository,
artifactFilter ) );
}
Run Code Online (Sandbox Code Playgroud)
那里不存在警告日志记录,因此:
Maven 2是否一直用于-Dverbose输出,但现在他们只添加了警告?
是的,自2.8版以来已添加警告.
无论如何我可以修理它还是避免它?
我猜不是,这不是忽略警告日志消息,也不是编辑源代码.
但是,如您所见,Maven 2功能已在2.8中使用.希望在迁移dependency:tree -Dverbose到使用maven 3功能时,您将在以后的版本中摆脱它.
| 归档时间: |
|
| 查看次数: |
3559 次 |
| 最近记录: |