我使用下面的命令来激活jmx,也需要javaagent在我的程序中,它在java 11中工作得很好。命令如下:
java -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8071
-javaagent:D:\resources\aspectjweaver-1.9.7.jar -jar app.jar
但是当我把java升级到java 17的时候,程序意外的退出了,没有任何异常。java 17需要什么情况才能把java选项和java工具选项一起使用吗?
任何帮助都将不胜感激。
我定义了JAVA_TOOL_OPTIONS环境变量,但问题没有得到解决。
1条答案
按热度按时间vecaoik11#
当且仅当您要编织的字节码只包含编译为目标〈= Java 16的类时,您才可以在Java 17+上使用AspectJ Weaver 1.9.7。否则,请升级到更新的AspectJ版本,最好是最新的1.9.9.1。
另外请注意,为了在Java 16+上使用LTW(加载时编织),您需要将
--add-opens java.base/java.lang=ALL-UNNAMED
添加到Java命令行,如release notes中所述。甚至1.9.7发行说明也包含该信息。