У меня есть 2 проекта Maven, A и B. Проект A полностью независим, а B требует A как зависимости. В настоящее время, B получает из репозитория Maven:Проект Maven требует локальной зависимости для построения
<dependency>
<groupId>com.myproject</groupId>
<artifactId>projectA</artifactId>
<version>2.0.0-SNAPSHOT</version>
</dependency>
То, что я хотел бы сделать, это настроить зависимость такая, что B может ссылаться на локальный экземпляр A. Я могу сделать следующее:
<dependency>
<groupId>com.myproject</groupId>
<artifactId>projectA</artifactId>
<version>2.0.0-SNAPSHOT</version>
<scope>system</scope>
<systemPath>${basedir}/../projectA/target/projectA-2.0.0-SNAPSHOT.jar</systemPath>
</dependency>
, но это работает только в том случае, если A уже построен (так projectA-2.0.0-SNAPSHOT.jar
уже существует).
Есть ли способ заставить A построить до B в тех случаях, когда у меня еще нет сборки A?
Это близко к тому, что я хочу сделать, но когда я избавлюсь от свойства '', он по умолчанию выполняет поиск maven-репо для 'projectA-2.0.0-SNAPSHOT.jar', вместо того, чтобы использовать локальный один. Есть ли способ заставить его сначала проверить местонахождение? –
NonsenseSynapse
Теперь вам не нужно давать 'systemPath'. Это зависимость от модуля. –
Теперь он работает. Я изменил groupId, чтобы проверить, действительно ли он работает локально, но забыл обновить его на одном из дочерних модулей. – NonsenseSynapse