Я хочу использовать один проект SB как зависимость в другом проекте - без использования родительского pom и локально. Я сделал это прежде, чем использовать родительский pom и указать модули, но я смотрю на разделение репо и мне нужно добиться того же самого без родительского pom.
Я нашел несколько SO-сообщений, описывающих способы сделать это, но ни один из них, похоже, не работает для меня. Все они включают mvn install
артефакт, чтобы он был доступен в локальном репо. И, похоже, это работает для меня, пока это не так.
Примечание: я работаю в корпоративной среде и планирую развернуть эти банки в нашем внутреннем репозитории Nexus, однако я хотел бы выяснить, прежде чем углубляться по этому маршруту, сначала выполните локальную разработку.
Моя установка - это два пустых проекта start.spring.io (с разными именами).
.
├── test-application
│ ├── pom.xml
│ └── src
│ └── main
│ ├── java
│ │ └── com
│ │ └── example
│ │ └── testapplication
│ │ ├── TestApplication.java
│ │ └── TestClientConfig.java
│ └── resources
│ └── application.properties
│
└── test-client
├── pom.xml
└── src
└── main
├── java
│ └── com
│ └── example
│ └── testclient
│ ├── TestClient.java
│ └── TestClientApplication.java
└── resources
└── application.properties
В одном проекте test-client
Я определяю новый класс
// TestClient.java
public class TestClient {
private String value;
public TestClient(String value) {
this.value = value;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}
Просто некоторый базовый c тестовый класс, который я превращу в bean-компонент в моем потребительском приложении.
Далее я запускаю mvn clean install
и проверяю, что он находится в моей папке .m2/repository
![enter image description here](https://i.stack.imgur.com/K1wAq.png)
А теперь в test-application
//pom.xml
<dependency>
<groupId>com.example</groupId>
<artifactId>test-client</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
Автоматический импорт IntelliJ и все выглядит нормально, без красного.
Далее, внутри нового файла TestClientConfig.java
Я начинаю реализацию моего клиента:
![enter image description here](https://i.stack.imgur.com/QkN82.png)
IntellJ выбирает новые классы из зависимости и предлагает их. Тем не менее, когда я пытаюсь импортировать, все получается не очень хорошо.
Он импортирует полное имя пакета, а затем не распознает его: ![enter image description here](https://i.stack.imgur.com/BTfSz.png)
И я не могу добавить оператор импорта.
Так что я застрял в этой точке. Я попытался найти некоторые настройки в IntelliJ, чтобы включить скомпилированный jar в качестве библиотеки или добавить модуль, но на самом деле ничего не работало полностью, и эти параметры казались немного странными.
Вот ссылка на zip: https://drive.google.com/open?id=13XGVzICO_QHn_ihM7NFtK3GobAxeqLYf