Java编译器会自动重命名参数(混淆)(Java compiler automatically re

2019-09-18 03:04发布

当我编译我写的代码,然后看看AA JD桂,方法显示了头,如以下几点:

public void growSurface(Random paramRandom, int paramInt1, int paramInt2){

我通过一个.bat文件编制。 有没有指定我不想混淆代码的方式。

Answer 1:

默认情况下javac不包括在生成的调试信息class文件。 此信息例如方法的参数名称(但方法和字段名总是存储,以允许反射)。 当参数名不知道,JD-GUI和其它反编译器正在一些合理的名称。 他们不模糊的 - 只是它们不存在。

编译你的代码-g标志:

javac -g SomeClass.java

刚才检查JD-GUI - 它显示正确的参数名称即可。



文章来源: Java compiler automatically renaming parameters (obfuscating)