При переключении моего приложения Grails с Java 8 на Java> = 9 (на самом деле тестирование с Java 11) я получаю разные исключения ClassNotFound.
Проблема в том, что некоторые модули API Java EE помечены @Deprecated (forRemoval = true), поэтому они могут быть удалены в Java 11.
Я уже обновил другое приложение, в котором есть файл Maven pom.xml.
Добавление этих депов решает проблему:
<dependencies>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-core</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.3.0</version>
</dependency>
</dependencies>
Но теперь мне нужно обновить приложение, в котором нет файла pom. Сейчас я импортировал проект в IntelliJ. Я пытался добавить Maven / pom.xml, но каждый раз, когда я строю разнесенную войну и запускаю ее с Jetty, я не могу найти deps.
Resolve java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
Каким образом предлагается добавить эти недостающие депы (с использованием или без использования Maven)?