2017-02-13 12 views
0

Я изучаю некоторые JARs в Maven Repository и обнаружил это:Какова конечная область зависимости, когда для одного JAR заданы разные области применения?

  • Hibernate Validator двигатель 5.4.0.FINAL перечисляет JBoss-регистрацию в качестве зависимости компиляции и JBoss каротаж-процессор, предоставленные зависимости
  • JBoss-каротаж процессор перечислен JBoss-каротаж, как при условии зависимости

В общем, когда баночка упоминается несколько раз вдоль пути при различных областях, что является окончательным, фактическим объемом? Есть ли порядок приоритетов?

ответ

0

Это зависит от контекста, а не от наследования.

Однако, если некоторые последствия присутствуют:

  • что-то помечается как compile это неявно runtime зависимость.
  • что-то обозначено как runtime неявно является зависимостью test.
  • provided будет использоваться как в runtime, так и в test, хотя он не загружается во время работы или тестирования.
  • system будет использоваться как runtime и test
+0

СММ Я до сих пор не понимаю. Так скажите, когда я пересекаю зависимости, определенный JAR помечен как зависимость от компиляции для некоторых и предоставил зависимость для других, как пример, как я могу определить, что это такое? – thegreatjedi