Транзитивная зависимость в реакторе maven с jdk17

Я занимаюсь обновлением большого приложения до JDK17. Сегодня проект отлично компилируется с JDK11 и maven.

С JDK17 у меня действительно странная проблема с версиями транзитивных зависимостей.

Этот проект состоит из нескольких подмодулей. Если я скомпилирую модуль напрямую, он будет работать нормально.

Однако, если я компилирую корневой модуль или любой модуль, содержащий подмодули, разрешение транзитивных зависимостей не работает. У меня такая ошибка:

      [INFO] -------------------------------[ bundle ]-------------------------------

Downloading from internal-repository: http://srv:8080/nexus/content/groups/public/org/apache/camel/camel-netty4/$%7Bproject.version%7D/camel-netty4-$%7Bproject.version%7D.pom

[WARNING] The POM for org.apache.camel:camel-netty4:jar:${project.version} is missing, no dependency information available

Downloading from internal-repository: http://srv:8080/nexus/content/groups/public/org/apache/camel/camel-netty4/$%7Bproject.version%7D/camel-netty4-$%7Bproject.version%7D.jar

Версия зависимости вместо настоящей версии. В проекте не используется прямо, но :

      <dependency>
  <groupId>org.apache.camel</groupId>
  <artifactId>camel-syslog</artifactId>
  <version>${camel.version}</version>
</dependency>

это просто пример, другие проекты терпят неудачу из-за других транзитивных зависимостей. И это работает, если я скомпилирую подмодуль напрямую.

Maven 3.6.3

1 ответ

Я использовал «Eclipse Adoptium — Temurin-17+35». Переключившись на официальный OpenJDK, я не могу воспроизвести эту проблему.

Этот JDK не работает в моем случае со случайными ошибками, связанными с проблемой интерполяции.

      IMPLEMENTOR="Eclipse Adoptium"
IMPLEMENTOR_VERSION="Temurin-17+35"
JAVA_VERSION="17"
JAVA_VERSION_DATE="2021-09-14"
FULL_VERSION="17+35"
SEMANTIC_VERSION="17+35"
BUILD_INFO="OS: Windows Server 2012 R2 Version: 6.3"
JVM_VARIANT="Hotspot"
JVM_VERSION="17+35"
IMAGE_TYPE="JDK"

Этот работал каждый раз:

      IMPLEMENTOR="Oracle Corporation"
JAVA_VERSION="17.0.1"
JAVA_VERSION_DATE="2021-10-19"
LIBC="default"
MODULES="java.base java.compiler java.datatransfer java.xml java.prefs java.desktop java.instrument java.logging java.management java.security.sasl java.naming java.rmi java.management.rmi java.net.http java.scripting java.security.jgss java.transaction.xa java.sql java.sql.rowset java.xml.crypto java.se java.smartcardio jdk.accessibility jdk.internal.jvmstat jdk.attach jdk.charsets jdk.compiler jdk.crypto.ec jdk.crypto.cryptoki jdk.crypto.mscapi jdk.dynalink jdk.internal.ed jdk.editpad jdk.hotspot.agent jdk.httpserver jdk.incubator.foreign jdk.incubator.vector jdk.internal.le jdk.internal.opt jdk.internal.vm.ci jdk.internal.vm.compiler jdk.internal.vm.compiler.management jdk.jartool jdk.javadoc jdk.jcmd jdk.management jdk.management.agent jdk.jconsole jdk.jdeps jdk.jdwp.agent jdk.jdi jdk.jfr jdk.jlink jdk.jpackage jdk.jshell jdk.jsobject jdk.jstatd jdk.localedata jdk.management.jfr jdk.naming.dns jdk.naming.rmi jdk.net jdk.nio.mapmode jdk.random jdk.sctp jdk.security.auth jdk.security.jgss jdk.unsupported jdk.unsupported.desktop jdk.xml.dom jdk.zipfs"
OS_ARCH="x86_64"
OS_NAME="Windows"
SOURCE=".:git:75240a5872a1"
Другие вопросы по тегам