Ошибка установки Intellij Spring maven "пакет не существует" - PullRequest
0 голосов
/ 14 октября 2019

Intellij версия: Community 2019.2.3 Maven: 3.6.2 Spring: 2.2.0

Я пытаюсь создать очень простой проект Spring maven с двумя подмодулями (один независимый, а другой зависимый отнезависимый).

Корневой модуль - testmultimodule Независимый модуль - независимый модуль - зависимый

testmultimodule pom.xml имеет все Spring-связанное объявление и определение модуля

<modules>
    <module>independent</module>
    <module>dependant</module>
</modules>

Независимыйpoom.xml проще всего и. имеет только родительское объявление maven

<parent>
    <artifactId>testmultimodule</artifactId>
    <groupId>in.org.app</groupId>
    <version>1.0-SNAPSHOT</version>
</parent>

зависимый модуль pom.xml имеет объявление зависимости, как показано ниже для независимого модуля

   <dependencies>
        <dependency>
            <groupId>in.org.app</groupId>
            <artifactId>independent</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>
    </dependencies>

Я создал класс Test в зависимый модуль и использование объекта User из независимого модуля. Первоначально, без вышеуказанного объявления зависимостей, как обычно, произошла ошибка компиляции. Как только я добавляю зависимость и строю проект в Intellij IDE с опцией «Build Prooject» из меню «Build», он успешно собирается.

Однако, если я пытаюсь использовать опцию установки Maven в Intellijопция окна правой стороны. Всегда указывается Error:(3,33) java: package in.org.app.independent.bo does not exist.

Я предоставляю GitHub URL для тестового проекта, если вы хотите посмотреть и протестировать самостоятельно.

GIT URL:

https://github.com/DhruboB/testmultimodule

Я пробовал все виды настроек, найденных в интернете, например, очисткаIntellij Cache и перезапуск, mvn -U чистая установка, проверка области действия mvn, прокси и т. Д.

Есть еще идеи, чтобы решить эту проблему? Мне нужно решить эту проблему в версии Intellij для сообщества.

1 Ответ

0 голосов
/ 14 октября 2019

Ваш родительский проект включает определение для spring-boot-maven-plugin. Это приводит к тому, что каждый плагин определяет этот проект как родительский для перепаковки в исполняемый файл JAR. Этот переупакованный JAR не может использоваться в качестве зависимости в другом проекте.

Либо вам нужно изменить конфигурацию spring-boot-maven-plugin для проекта, который вы хотите использовать в качестве зависимости. Это объясняется здесь в справочном руководстве по загрузке Spring. Теперь у вас есть 2 фляги из этого проекта, один простой и один исполняемый.

Если вам не требуется, чтобы этот проект был исполняемым JAR-файлом, просто переместите spring-boot-maven-plugin в проект, который должен быть. Все остальные проекты больше не будут простыми файлами JAR.

См. Также Как добавить зависимость для Spring Boot Jar в другом проекте?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...