可以分析Java程序,将其分解为基本包和JRE吗?

可以分析Java程序,将其分解为基本包和JRE吗?,java,size,runtime,optimization,Java,Size,Runtime,Optimization,是否有某种工具可以分析Java程序,并将Java运行时和程序本身剥离到基本内容?工具是否可以分析程序依赖关系,并仅使用所需的库创建自定义JRE?您正在寻找的。它们还可以在JRE的rt.jar上运行。您可以尝试。它允许您删除未使用的类和方法。如果您使用Class.forName(“myclass”)之类的东西,这可能会适得其反,所以一定要进行大量测试。您可以尝试针对JVM库运行收缩器,但这似乎有风险。ProGuard声称处理Class.forName(“name”),当“name”是一个文本时(或

是否有某种工具可以分析Java程序,并将Java运行时和程序本身剥离到基本内容?工具是否可以分析程序依赖关系,并仅使用所需的库创建自定义JRE?

您正在寻找的。它们还可以在JRE的rt.jar上运行。

您可以尝试。它允许您删除未使用的类和方法。如果您使用Class.forName(“myclass”)之类的东西,这可能会适得其反,所以一定要进行大量测试。您可以尝试针对JVM库运行收缩器,但这似乎有风险。

ProGuard声称处理
Class.forName(“name”)
,当
“name”
是一个文本时(或者ProGuard肯定可以处理的最后一个静态变量)。只有在
Class.forName(variable)
这样的情况下,
variable
是不可预测的,才会出现问题。