Joh*_*aja 1 java obfuscation java-me
我能够运行以下示例代码
//main class
String a="Menu";
Object o = Class.forName("org.test."+a).newInstance();
//Menu class
public class Menu()
{
public Menu()
{
System.out.println("con called");
}
}
Run Code Online (Sandbox Code Playgroud)
它运行正常,但当我混淆代码时,我得到一个没有ClassNotFoundException.
我使用的是netbean 6.9.1.在附加的obfusating设置中,我添加了-keepnames类org.test.Menu.但仍然没有工作.有解决方案吗
琐碎的原因:混淆器将名称更改为org.test.Menu其他名称(更改了包名称和/或更改了类名称).并且混淆器不能"重构"类,以便其他类文件中基于String的类名也被更改.
如果是这种情况,请告诉混淆器不要触摸org.test包(保留该名称,不要混淆其中的类的名称).
| 归档时间: |
|
| 查看次数: |
859 次 |
| 最近记录: |