Вывод отладки Maven: что означает (f)? - PullRequest
5 голосов
/ 07 января 2010

Когда вы запускаете Maven 2 с флагом -X и смотрите, как он конфигурирует плагины, вы можете увидеть вывод так:

[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) и (с)?

1 Ответ

8 голосов
/ 08 января 2010

Интересный вопрос. Я никогда не обращал внимания на эту маленькую деталь и не мог найти никакой документации по ней. Итак, я нашел источники, и это то, что мы можем видеть в 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) должна быть самоочевидной (вздох).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...