@Yasuro

Как избежать ClassNotFoundException в Spring + ArangoDb + Maven в проекте разделенном на модули?

Создал модуль для работы с arangoDb по примеру. Вот pom.xml:
5d644a31bb729482546772.png
Все хорошо работает, как надо.
Решил растащить этот пример на модули, т.е вынести все что не связано с аранго и spring data в отдельный модуль "core", а все что связано с БД оставить в рабочем компоненте "kernel" .
pom.xml kernel:
5d645361f24bd021299735.png

Таким образом, в отдельный модуль "Core" вышел только spring core:
@SpringBootApplication
public class Core {
    public static void main(String[] args) {
        final Class<?>[] runner = new Class<?>[] { KernelRunner.class};
        System.exit(SpringApplication.exit(SpringApplication.run(runner,args)));
    }
}

@ComponentScan("com.name.proj.kernel") //пакет com.name.proj.kernel - из рабочего модуля (в котором вся логика с аранго)
public class KernelRunner implements CommandLineRunner {
    @Override
    public void run(String... args) throws Exception {
        System.out.println("it is runner");
    }
}

pom.xml компоненты Core
5d644e0e3e627453874863.png
Когда запускаю Core получаю ошибку:
Caused by: java.lang.ClassNotFoundException: com.arangodb.springframework.repository.ArangoRepository
ArangoRepository - это интерфейс, который я наследую, чтобы spring сконфигурил DAO:
public interface MyObjectRepository extends ArangoRepository<MyObject, String>


Почему в такой реализации спринг не видит ArangoRepository?

ЧтоПробовал:""

изменить pom.xml в core:
<dependency>
            <groupId>org.springframework.boot</groupId>
           Это: <artifactId>spring-boot-starter</artifactId> заменить на это: <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

Тогда получаю:
Caused by: org.springframework.context.ApplicationContextException: Unable to start ServletWebServerApplicationContext due to missing ServletWebServerFactory bean.
StackOverflow говорит мл чтобы это пофиксить, надо добавить spring.main.web-application-type=none в application.properties. В таком случае, снова получаю ClassNotFoundException
  • Вопрос задан
  • 29 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
MFMS Москва
от 150 000 до 300 000 руб.
HFLabs Москва
от 240 000 до 280 000 руб.
Uventex labs Санкт-Петербург
от 2 000 usd.