2010-01-07 24 views
4

当您与-X标志运行Maven 2,你看,它配置了插件,你可能会看到这样的输出:Maven调试输出:(f)是什么意思?

[DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-clean-plugin:2.3:clean' --> 
[DEBUG] (f) directory = e:\projects\foobar\target 
[DEBUG] (f) excludeDefaultDirectories = false 
[DEBUG] (f) failOnError = true 
[DEBUG] (s) directory = . 
[DEBUG] (s) includes = [**/*~] 
[DEBUG] (f) filesets = [file set: . (included: [**/*~], excluded: [])] 
[DEBUG] (f) followSymLinks = false 
[DEBUG] (f) outputDirectory = e:\projects\foobar\target\classes 
[DEBUG] (f) project = MavenProject: foobar:foobar:1.0-SNAPSHOT @ e:\projects\foobar\pom.xml 
[DEBUG] (f) reportDirectory = e:\projects\foobar\target\site 
[DEBUG] (f) skip = false 
[DEBUG] (f) testOutputDirectory = e:\projects\foobar\target\test-classes 
[DEBUG] -- end configuration -- 

是什么的(F)和(S)之间的区别?

回答

8

有趣的问题。我从来没有注意到这个小细节,也找不到任何文档。所以我greped的来源,这是我们可以在o.a.m.p.DebugConfigurationListener看到(从Maven的核心):

public void notifyFieldChangeUsingSetter(String fieldName, Object value, Object target) 
{ 
    if (logger.isDebugEnabled()) 
    { 
     logger.debug(" (s) " + fieldName + " = " + toString(value)); 
    } 
} 

public void notifyFieldChangeUsingReflection(String fieldName, Object value, Object target) 
{ 
    if (logger.isDebugEnabled()) 
    { 
     logger.debug(" (f) " + fieldName + " = " + toString(value)); 
    } 
} 

之间的差异(F)和(S)应该是自我解释(叹气)现在。

相关问题