ProGuard中断了对我的Java小程序的javascript访问
我有一个jar文件,作为小程序加载到浏览器中。在网页上,有几个javascript实例通知Java小程序要做什么。 但是在用ProGuard混淆了.jar文件之后,这就不再有效了。 浏览器控制台显示以下错误:ProGuard中断了对我的Java小程序的javascript访问,java,javascript,browser,applet,proguard,Java,Javascript,Browser,Applet,Proguard,我有一个jar文件,作为小程序加载到浏览器中。在网页上,有几个javascript实例通知Java小程序要做什么。 但是在用ProGuard混淆了.jar文件之后,这就不再有效了。 浏览器控制台显示以下错误: Object\htmlapletement没有方法“示例” 这是Java代码: 公共无效示例(int i){ dosomething() } 在没有ProGuard混淆的情况下工作正常-我在ProGuard中尝试了许多不同的设置。我遗漏了什么?引自ProGuard手册: 处理回调方法 如果
Object\htmlapletement没有方法“示例”
这是Java代码:
公共无效示例(int i){
dosomething()
}
在没有ProGuard混淆的情况下工作正常-我在ProGuard中尝试了许多不同的设置。我遗漏了什么?引自ProGuard手册:
处理回调方法
如果您的应用程序、applet、servlet、库等包含回调方法,这些方法是从外部代码(本机代码、脚本等)调用的,那么您需要保留它们,可能还需要保留它们的类。它们只是代码的入口点,很像应用程序的主要方法。如果其他-keep
选项未保留它们,则类似于以下选项的内容将保留回调类和方法:
-保留类mypackage.MyCallbackClass{
void myCallbackMethod(java.lang.String);
}
这将保护给定的类和方法不被删除或重命名