У меня есть LOCAL_PROJECT_1:
-- multi-module-first
|-- module-core
|-- ...
|-- pom.xml
|-- module-extra
|-- ...
|-- pom.xml
|-- pom.xml
... и LOCAL_PROJECT_2:
-- multi-module-second
|-- another-module-core
|-- ...
|-- pom.xml
|-- another-module-extra
|-- ...
|-- pom.xml
|-- pom.xml
LOCAL_PROJECT_2 имеет зависимость LOCAL_PROJECT_1
при запуске mvn install
вLOCAL_PROJECT_1 следующие каталоги создаются в .m2 / repository / PACKAGE_PATH_OF_PROJECT_1 /
-- multi-module-first
|-- 1 (because of <project.build.version>1</project.build.version>)
|-- multi-module-first-1.pom
-- module-core
|-- 1
|-- module-core-1.jar
|-- module-core-1.pom
-- module-extra
|-- 1
|-- module-extra-1.jar
|-- module-extra-1.pom
Затем я пытаюсь сделать то же самое с LOCAL_PROJECT_2, но получаю:
[ERROR] Failed to execute goal on project LOCAL_PROJECT_2_CORE: Could not resolve dependencies for project local.project2.groupId:another-module-core:jar:1: Failed to collect dependencies at PROJECT_1_GROUP:module-core:jar:1: Failed to read artifact descriptor for PROJECT_1_GROUP:module-core:jar:1: Could not transfer artifact PROJECT_1_GROUP:multi-module-first:pom:${project.build.version} from/to 1 (https://repo.boundlessgeo.com/main): Failed to transfer file https://repo.boundlessgeo.com/main/PACKAGE_PATH_OF_PROJECT_1/$%7Bproject.build.version%7D/PROJECT_1_GROUP-$%7Bproject.build.version%7D.pom with status code 400 -> [Help 1]
Основная часть ошибки1016 *
После этого шага, если я проверяю .m2 / repository / PACKAGE_PATH_OF_PROJECT_1 / я вижу, что каталог ${project.build.version}
был создан
-- multi-module-first
|-- 1
|-- multi-module-first-1.pom
|-- ${project.build.version}
-- module-core
|-- 1
|-- multi-module-1.jar
|-- multi-module-1.pom
-- module-extra
|-- 1
|-- multi-extra-1.jar
|-- multi-extra-1.pom
, и если я проверяю multi-module-first-1.pom
я вижу
...
<groupId>PROJECT_1_GROUP</groupId>
<artifactId>multi-module-first</artifactId>
<version>${project.build.version}</version>
<packaging>pom</packaging>
<modules>
<module>module-core</module>
<module>module-extras</module>
</modules>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.build.version>1</project.build.version>
<maven.compiler.source>12</maven.compiler.source>
<maven.compiler.target>12</maven.compiler.target>
</properties>
...
Так что мне кажется, что Maven не знает, что он должен использовать версию LOCAL_PROJECT_1 версии 1
, и считает, что "номер" версии, который он должен использовать, равен ${project.build.version}
.