У меня есть проект Spring Boot и я хочу включить не-Boot проект, потому что у него есть объект, который я хочу использовать в проекте Boot.Я не хотел дублировать сущность в моем загрузочном проекте, я хочу, чтобы она была централизована в одном месте и имела ссылку на эту сущность.
Итак, я создал JAR-файл из не-Boot-проекта и поместил его в корневой каталог Boot-проекта в созданную папку /libs
.
В pom.xml
(проекта Boot) я включаю не-Boot проект в качестве зависимости:
<dependency>
<groupId>de.example.mycompany</groupId>
<artifactId>smarthome-b</artifactId>
<version>0.0.1-SNAPSHOT</version>
<scope>system</scope>
<systemPath>${basedir}/libs/smarthome-b.jar</systemPath>
</dependency>
Теперь, когда я строю проект Boot с Run as → Maven build ... → clean package
и запустить приложение на Tomcat ... оно не запускается, потому что говорит ClassNotFoundException
(не может найти сущность, которая используется в моем загрузочном проектено определено в JAR без Boot).
При просмотре папки WEB-INF
я нахожу папку с именем libs-provided
.В моем комплекте JAR.Рядом с libs-provided
находится папка libs
, которая включает в себя все зависимости, кроме моего JAR!
Итак, что я делаю не так и как правильно включить и зависеть от JAR, чтобы я мог использовать объектыне-Boot проект в моем Boot-проекте (через зависимость).