使用以下最低pom.xml
探索maven-jdeps-plugin:3.1.0
與Java9: -錯誤:log4j的-API-2.9.0.jar是一個多版本的jar文件,但--multi釋放選項未設置
<dependencies>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.9.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<source>1.9</source>
<target>1.9</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jdeps-plugin</artifactId>
<version>3.1.0</version>
<executions>
<execution>
<goals>
<goal>jdkinternals</goal> <!-- verify main classes -->
<goal>test-jdkinternals</goal> <!-- verify test classes -->
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
在執行
mvn install
我最終得到一個詳細的錯誤,上面寫着以下內容: -
[INFO] Error: log4j-api-2.9.0.jar is a multi-release jar file but --multi-release option is not set [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 3.389 s [INFO] Finished at: ... [INFO] Final Memory: 12M/41M [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-jdeps-plugin:3.1.0:jdkinternals (default) on project maven-jigsaw: [ERROR] Exit code: 2 [ERROR] Command line was: /bin/sh -c '/Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home/bin/jdeps' '-cp' '.../.m2/repository/org/apache/logging/log4j/log4j-api/2.9.0/log4j-api-2.9.0.jar' '../maven/target/classes'
I C與Oracle幫助中心記錄的jdeps:jdkinternals
目標在Maven的官方站點上詳細描述的目標或者jdeps
tool中的--multi-release
標誌無關。
有人可以在這個實施maven-jdeps-plugin
一些燈光?有沒有辦法解決這個問題(設置--multi-release
選項)?
你是如何將你的錯誤信息連接到Log4J作爲MR-JAR的,並且這是導致問題的原因? – Nicolai
但不是你的問題顯示的輸出。 :) – Nicolai
@Nicolai現在完成日誌的問題,並添加到它'INFO'是它的閱讀水平'錯誤'!(有些東西肯定是搞砸了) – nullpointer