Разрешение зависимостей Maven и переопределение области

Заявление об ограничении ответственности

(Первоначально я задал этот вопрос очень подробно здесь . Я взял его здесь как maven-users) список рассылки замолчал по этому вопросу.) (Не просто еще один вопрос для новичков)

Ссылка

Мои справочные материалы: http://maven.apache.org/guides /introduction/introduction-to-dependency-mechanism.html#Dependency_Management; пожалуйста, дайте мне знать в этом обсуждении, если оно устарело или неверно.

Вопрос

В этом документе есть раздел, который начинается с wi th "Второе, и очень важное ...". Далее я буду ссылаться на проекты этого раздела A и B и буду отрывками из них.

В этом разделе вы увидите, что проект A имеет раздел , который, помимо прочего, определяет артефакт, c , как имеющий область видимости compile :



    
        test
        c
        1.0
        compile 
    

Затем вы увидите pom.xml для проекта B , который (a) наследуется от проекта A (таким образом наследуя его раздел dependencyManagement ) и (b) устанавливает зависимость от артефакта c , без необходимости указывать его версию . Вы также заметите, что зависимость от артефакта c переопределяет область действия c как среда выполнения , а не компиляция :



    
        test
        c
        runtime 
    

Опять же , вы заметите, что нет элемента , но есть элемент runtime .

Моя интерпретация заключается в том, что, когда все будет сказано и сделано, B будет зависеть от версии 1.0 артефакта c в среде выполнения ], а не компилировать область.

Это правильно? Моя ошибка maven-ear-plugin основана на том факте, что это ожидаемое поведение. Это не то, что происходит, когда maven-ear-plugin создает файл .ear .

Затем, если это верно, я также ожидал бы, что если бы артефакт c имел какие-либо транзитивные зависимости времени выполнения , они были бы доступны в B ] runtime путь к классам (как определено в несколько сбивающей с толку таблице в http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Scope ).

Правильно?

32
задан ROMANIA_engineer 27 July 2017 в 22:42
поделиться