Maven ищет зависимости не в том месте (для определенных вещей)

#java #maven

#java #maven

Вопрос:

Я нахожусь в процессе преобразования существующего проекта ANT в Maven. Мне удалось разрешить большинство jar, но у меня возникли некоторые трудности со следующим.

Я пытаюсь понять, почему Maven будет искать транзитивные зависимости для этих библиотек в том же пространстве имен, что и артефакт, который зависит от него.

Вот пример ошибки, когда я запускаю приложение внутри IntelliJ.

[19 августа 2020 16:08:12,619] [main] [StandardJarScanner] ПРЕДУПРЕЖДЕНИЕ Не удалось отсканировать [файл: .m2/repository/org/glassfish/jaxb/jaxb-runtime/2.3.1/FastInfoset-1.2.15.jar ] из иерархии загрузчика классов — org.eclipse.jetty.apache.jsp.JuliLog.warn(JuliLog.java:146) java.io.FileNotFoundException: .m2/repository/org/glassfish/jaxb/jaxb-runtime/2.3.1/FastInfoset-1.2.15.jar (Такого файла или каталога нет)

На самом деле, jaxb-runtime 2.3.1 действительно зависит от библиотек, о которых сообщается ниже; но я не уверен, почему он будет искать FastInfoset внутри org/glassfish/jaxb/jaxb-runtime/2.3.1 . У меня такая же проблема с mail-1.4.jar . Никакие другие зависимости не вызывают у меня этой проблемы. Любая помощь была бы высоко оценена. Спасибо!

  • javax.mail.mail.1.4
    • activation.jar
  • org.glassfish.jaxb.jaxb-среда выполнения.2.3.1
    • jaxb-api-2.3.1.jar
    • txw2-2.3.1.jar
    • istack-commons-runtime-3.0.7.jar
    • stax-ex-1.8.jar
    • FastInfoset-1.2.15.jar
    • javax-activation-api-1.2.0.jar

Комментарии:

1. какую группу вы установили для jaxb-runtime? можете ли вы поделиться своим pom?

2. Я использую тот, что из org.glassfish.jaxb. К сожалению, я не могу поделиться своим pom-файлом. Я просто не уверен, почему он будет искать свои зависимости в группе org.glassfish.jaxb, а не ссылаться на правильное пространство имен. Спасибо.