Eclipse classpath не переходный - PullRequest
       22

Eclipse classpath не переходный

1 голос
/ 17 ноября 2011

Предположим, у нас есть:

  • Eclipse проект A в зависимости от проекта Eclipse B.
  • Проект B зависит от commons-collection.jar (указан в .classpath of B)

Почему транзитивный механизм не применяется в Eclipse IDE, поэтому A знает о commons-collection.jar даже без указания его в своем собственном файле .classpath.

Я знаю, что Maven может предоставить эту функцию, но почему IDE, такая как Eclipse (или IntelliJ;)), по умолчанию нет?

Есть ли минусы? Это для того, чтобы избежать снижения производительности из-за проверки каждого элемента в classpath?

Ответы [ 2 ]

5 голосов
/ 17 ноября 2011

Ну, по умолчанию это не применяется, но вы должны использовать вкладку «Порядок и экспорт» в «Путь сборки Java» в «Свойствах» вашего проекта Eclipse.Проверьте желаемую зависимость, чтобы стать переходной.

Почему она не установлена ​​по умолчанию?Например, могут существовать зависимости, которые не нужны во время выполнения (также называемые «предоставленными») ... Вы не должны создавать небольшой военный файл из своего проекта и в результате получить гигантский архив.

1 голос
/ 17 ноября 2011

На самом деле вам лучше импортировать ваш pom.xml в вашу любимую IDE (конечно, IntelliJ) и позволить плагину Maven выполнять интерпретацию poms и создавать для вас правильные зависимости, а не делать это вручную. К сведению, ядро ​​сборки IntelliJ основано на Maven с нескольких версий.

...