Ошибка сборки проекта Maven из нескольких модулей
Есть проект из нескольких модулей. Один из модулей состоит всего лишь из одного класса с константами. Данный модуль состоящий из одного класса, является зависимостью другого модуля. Для наглядности: модуль 1 (common-rabbitmq) является зависимостью для модуля 2 (dispatcher). Когда я запускаю команду mvn package в корне проекта, он пытается собрать все оба модуля, но естественно при сборке 1 модуля с одним лишь файлом, выдает ошибку:
invalid target release: 11 -> [Help 1]
Главный pom.xml проекта, это по сути родитель, в котором нету папки src и так далее, это просто parent:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>ru.test</groupId>
<artifactId>testapp</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>
<modules>
<module>common-rabbitmq</module>
<module>dispatcher</module>
</modules>
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.12</version>
</parent>
</project>
pom.xml модуля 1(common-rabbitmq), это модуль, в котором один java класс, где static final String описаны названия очередей для брокера:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>ru.test</groupId>
<artifactId>testapp</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>common-rabbitmq</artifactId>
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
</project>
pom.xml модуля 2 (dispatcher), это уже модуль с какой то логикой, в которой используются названия очередей из модуля 1 (common-rabbitmq):
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>ru.test</groupId>
<artifactId>testapp</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>dispatcher</artifactId>
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
<dependency>
<groupId>biz.comfortvpn</groupId>
<artifactId>common-rabbitmq</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
ожидаю, что находясь в корне проекта, запустив команду mvn package получу jar файл модуля dispatcher, но получаю ошибку:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.10.1:compile (default-compile) on project common-rabbitmq: Fatal error co
mpiling: invalid target release: 11 -> [Help 1]
Вопроса два - как это решается? Почему при нажатии зеленой кнопки run в IDEA все работает, а при сборке мавеном нет?