Eclipse Spring IDE Spring Boot App с исключением ClassNotFoundException с WebMvcConfigurerAdapter

Я использую Eclipse Neon, (4.6) с плагином Spring IDE (3.8.1) для разработки приложения Spring Boot. Использование Spring Boot Dashboard и Spring Boot Configuration для управления запуском приложения в Eclipse. Все работало нормально при запуске приложения через Spring Boot Dashboard.

Теперь я добавил внешний файл свойств в приложение и сослался на него в своем классе @Configuration с помощью @PropertySource(value = {"classpath:fee.properties" }). Я также добавил расположение "внешней папки" в classpath через конфигурацию весенней загрузки. Откройте конфигурацию, перейдите на вкладку classpath, нажмите "Дополнительно", затем "Добавить внешнюю папку", добавив местоположение папки файла свойств.

При запуске приложения с помощью Spring Boot Dashboard (ранее) оно сообщает об исключении ClassNotFound Exception в org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter.

Если я удаляю внешнюю папку из вкладки classpath в конфигурации, приложение запускается нормально, пока не обнаружит ошибку, так как не может найти внешний файл свойств.

Если я запускаю приложение как "Java-приложение", щелкните правой кнопкой мыши по классу "main" приложения Spring Boot, "Run As... Java Application", и внешняя папка запустится нормально.

Поэтому в начале основной программы до того, как произойдет любое действие Spring, я добавил следующее для просмотра пути к классам.

ClassLoader cl = ClassLoader.getSystemClassLoader();
URL[] urls = ((URLClassLoader)cl).getURLs();
for(URL url: urls){
    System.out.println(url.getFile());
}

При запуске из панели инструментов Spring Boot в jarp classpath отсутствуют несколько jar-файлов, при запуске в качестве приложения Java или без записи внешней папки все jar-файлы присутствуют в classpath.

Пример некоторых из отсутствующих банок:

/Users/orlok/.m2/repository/org/springframework/spring-context-support/4.2.3.RELEASE/spring-context-support-4.2.3.RELEASE.jar
/Users/orlok/.m2/repository/org/springframework/boot/spring-boot/1.3.3.RELEASE/spring-boot-1.3.3.RELEASE.jar
/Users/orlok/.m2/repository/org/springframework/boot/spring-boot-starter-web/1.3.3.RELEASE/spring-boot-starter-web-1.3.3.RELEASE.jar
/Users/orlok/.m2/repository/org/springframework/boot/spring-boot-starter/1.3.3.RELEASE/spring-boot-starter-1.3.3.RELEASE.jar
/Users/orlok/.m2/repository/org/springframework/boot/spring-boot-starter-logging/1.3.3.RELEASE/spring-boot-starter-logging-1.3.3.RELEASE.jar

Я добавил "Spring_Boot_classpath.txt" в качестве вывода, который завершается с ошибкой ClassNotFoundException, и "Java_app_classpath.txt" в качестве вывода, работающего в качестве приложения Java, и в котором присутствуют все банки.

Что я делаю не так, должна ли внешняя папка быть определена по-другому, или это проблема с плагином?

0 ответов

Другие вопросы по тегам