使用以下最小maven-jdeps-plugin:3.1.0使用Java9探索Java9:-
<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最后,我得到了一个详细的错误,内容如下:
信息错误: log4j-api-2.9.0.jar是一个多版本jar文件,但是??多版本选项没有设置INFO信息生成失败信息?信息总时间: 3.389 s信息完成于:.信息最终内存: 12M/41M INFO错误未能执行项目org.apache.maven.plugins:maven-jdeps-plugin:3.1.0:jdkinternals (默认):错误退出代码:2错误命令行是: /bin/sh '/Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home/bin/jdeps‘'-cp’maven‘./maven/ -c /-c’
无论是在Maven官方网站上详细介绍的--multi-release目标中,还是在Oracle中心记录的工具中,我都找不到与jdeps:jdkinternals标志相关的太多关联。
有人能在maven-jdeps-plugin中说明一下这个实现吗?有办法解决这个问题(设置--multi-release选项)吗?
发布于 2017-10-28 06:52:13
这是用户错误。请输入jdeps -?在命令行上。你会看到你需要进入
jdeps --multi-release 9 ~/.m2/repository/org/apache/logging/log4j/log4j-api/2.9.1/log4j-api-2.9.1.jar发布于 2019-05-31 15:30:28
关于插件本身,下面的配置工作。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jdeps-plugin</artifactId>
<version>3.1.1</version>
<executions>
<execution>
<goals>
<goal>jdkinternals</goal> <!-- verify main classes -->
<goal>test-jdkinternals</goal> <!-- verify test classes -->
</goals>
</execution>
</executions>
<configuration>
<multiRelease>9</multiRelease> <!-- Check this out -->
</configuration>
</plugin>发布于 2022-01-17 00:38:02
我们可以通过命令行(自3.1.1版)传递多版本属性,例如:
mvn jdeps:jdkinternals -Djdeps.multiRelease=9https://stackoverflow.com/questions/46662286
复制相似问题