Разрешение ресурса JPMS - PullRequest
       17

Разрешение ресурса JPMS

0 голосов
/ 29 августа 2018

В процессе создания module-info.java для существующей служебной библиотеки (используя JDK 10.0.2 с источником и целью 10, IDEA 2018.2, Maven 3.5.4) я столкнулся со следующей проблемой:

Под src/main/resources/com/example/spring/config У меня есть набор Spring XML, таких как:

SpringLoggingConfig.xml
SpringApplicationId.xml

Они правильно упакованы в банку во время упаковки. Однако при запуске Lifecycle->test из меню IDE создание всех экземпляров ClassPathXmlApplicationContext завершается неудачно, а перечисленные выше ресурсы не найдены. С другой стороны, при запуске отдельных тестов с использованием контекстного меню класса тестирования все работает нормально. (Возможно, это связано с тем, что в меню жизненного цикла используется плагин surefire, а в последнем режиме запускается junit напрямую -?)

Поработав некоторое время, я нашел решение, добавив строку

opens com.example.spring.config;

до module-info.java (который IDEA помечает как пустой пакет, поскольку на самом деле во время компиляции такого пакета нет под src/main/java.)

Мои вопросы,

  1. Это правильный подход?
  2. Если так, как это работает?
  3. Если нет, каково правильное решение?
...