我试图用yGuard模糊一些jar文件。
shrink
任务似乎工作正常,但第一个rename
抛出异常。
将Jar C:\ work \ jars \ yguard_temp_8318169257227053930.jar混淆到base_obf.jar [rename]重映射期间出现错误('找不到:类java.util.Deque'的映射)!见日志!)
建立失败 C:\ rms \ Setup_FlashAbsicherungsTool_3.4.X_ALPHA2 \ build.xml:32:yGuard遇到IO问题!
日志也没有帮助:
<!-- An exception has occured.
com.yworks.yguard.obf.NoSuchMappingException: No mapping found for: Class java.util.Deque
com.yworks.yguard.obf.NoSuchMappingException: No mapping found for: Class java.util.Deque
at com.yworks.yguard.obf.ClassTree.mapMethod(Unknown Source)
at com.yworks.yguard.obf.classfile.ClassFile.remap(Unknown Source)
at com.yworks.yguard.obf.GuardDB.remapTo(Unknown Source)
at com.yworks.yguard.ObfuscatorTask.execute(Unknown Source)
at com.yworks.yguard.YGuardTask.execute(Unknown Source)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:435)
at org.apache.tools.ant.Target.performTasks(Target.java:456)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393)
at org.apache.tools.ant.Project.executeTarget(Project.java:1364)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1248)
at org.apache.tools.ant.Main.runBuild(Main.java:851)
at org.apache.tools.ant.Main.startAnt(Main.java:235)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)
-->
任何帮助高度赞赏。无法弄清楚原因。
答案 0 :(得分:0)
当你使用externalclasses
嵌套元素包含一些类时,似乎问题就出现了,而它恰好也在jar内(并且很可能它也必须可以从shrink
元素中指定的点访问)。