2016-10-19 2 views
1

Есть ли способ легко связать конкретный класс Java с банкой, которая указана в mvn dependency:tree? Я попробовал -X и -Dverbose, чтобы добавить многословие, но он этого не сделал.Как связать отдельные классы Java с банками, отображаемыми зависимостью: tree?

У меня есть оператор импорта, который, как я подозреваю, вытаскивается из одной банки в одной версии моего pom, а другой - при изменении некоторых зависимостей в pom, потому что API становится другим. Но я не знаю, как легко отследить импортированный класс в банке в дереве зависимостей.

+0

Вы используете IDE? Я не знаю способа показать его существующими плагинами Maven, но Eclipse делает это автоматически: откройте тип и нажмите [ссылка с редактором] (http://help.eclipse.org/luna/index.jsp?topic =% 2Forg.eclipse.platform.doc.user% 2Ftasks% 2Ftasks-18.htm). Он покажет вам, что JAR находится под ним. – Tunaki

+0

Я могу сделать это для большинства банок в 'IntelliJ', но не для' javax..' jars, где моя проблема - – amphibient

+0

, поэтому я хотел бы просто сделать maven. – amphibient

ответ

1

Чтобы найти зависимость Maven для конкретного импорта, я обычно делаю Go to -> Declaration (⌘B на OSX), а затем, нажав кнопку Scroll from Source на вкладке Project следующим образом:

enter image description here

I заметил, что в первый раз, когда я это сделал, источник для junit-3.8.1 не присутствовал в моем локальном кэше maven, из-за которого Intellij IDEA декомпилировал класс Testcase. Scroll from Source не работал для этого скомпилированного источника. Однако после нажатия Download Sources и повторной попытки Scroll from Source работал нормально, как указано выше.

Этот подход отлично зарекомендовал себя для проверки зависимости от maven, которая является источником , что один от импорта.

Смежные вопросы