java/jmx:java.rmi.server.codebase不支持嵌套的jar

2021-07-08 15:52:12 浏览数 (1)

根据java官方说明: 《Dynamic code downloading using Java™ RMI(Using the java.rmi.server.codebase Property)》

https://docs.oracle.com/javase/7/docs/technotes/guides/rmi/codebase.html

java.rmi.server.codebase 指定的类加载位置URL可以是jar包,也可以是‘/’结尾的类路径,但不可以是嵌套式的fat-jar包中的jar.比如spring-boot生成的fat-jar.

所以下面这样的定义的URL是有效的:

-Djava.rmi.server.codebase=jar:file:/J:/authkernel/authkernel-jmx/target/authkernel-jmx-1.6.3.jar

但是下面这种引用jar包中的jar的URL就是无效的

-Djava.rmi.server.codebase=jar:file:/J:/facelog/facelog-service/target/facelog-service-4.1.1-SNAPSHOT-standalone.jar!/BOOT-INF/lib/faceapi-base-4.0.0.jar

0 人点赞