我正在尝试使用jdeps和jlink为Spring微服务创建一个最小的jre,但是当我进入使用jdeps部分时,我会得到以下错误
Exception in thread "main" java.lang.module.FindException: Module java.annotation not found, required by org.apache.tomcat.embed.core
at java.base/java.lang.module.Resolver.findFail(Resolver.java:893)
at java.base/java.
我运行了以下命令,但我得到了同样的错误:
$ jdeps --generate-module-info . --multi-release 9 libs/log4j-core-2.11.1.jar
Error: log4j-core-2.11.1.jar is a multi-release jar file but --multi-release option is not set
$ jdeps --generate-module-info . --multi-release 10 libs/log4j-core-2.11.1.jar
Error: log4j-core-2.11.1.j
当我执行此命令时:
jdeps --module-path out --module test
它很好,它打印所有的信息。但是当我用-p替换--module-path时,它抛出了一个异常:
jdeps -p out --module test
Exception in thread "main" java.lang.module.FindException: Module test not found
但是根据java,我们可以用-p代替--module-path。
那么它为什么抛出异常呢?
我就是这样进来指挥的。
stillily@ubuntu:~$ cd Desktop/
stillily@ubuntu:~/Desktop$ cd jdk1.8.0_51/
stillily@ubuntu:~/Desktop/jdk1.8.0_51$ cd bin/
stillily@ubuntu:~/Desktop/jdk1.8.0_51/bin$ ls
appletviewer jar javadoc javapackager jconsole jhat jmc jsadebugd jvisualvm pack200 r
我的maven在jdeps插件上失败了(我们需要它来升级到jdk11)。
对于windows,命令行太长。下面是我得到的错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-jdeps-plugin:3.1.1:jdkinternals (default) on project myproject:
[ERROR] Exit code: 1 - La ligne de commande est trop longue.
[ERROR]
[ERROR] Command line was: cmd.exe /X /C