【发布时间】:2011-12-08 18:11:43
【问题描述】:
我尝试使用 Proguard 缩小和混淆我的 Scala/Java 程序。当我只使用 scala-library.jar 时,一切都很好,但是当我将 scala-swing.jar 添加到我的 jar 中时,我得到以下信息:
Warning: scala.swing.ComboBox: can't find referenced class scala.swing.ComboBox$selection
Warning: scala.swing.ListView: can't find referenced class scala.swing.ListView$selection
Warning: scala.swing.ListView$selection$: can't find referenced class scala.swing.ListView$selection$indices
Warning: scala.swing.ListView$selection$: can't find referenced class scala.swing.ListView$selection$items
Warning: scala.swing.ListView$selection$$anon$7: can't find referenced class scala.swing.ListView$selection
Warning: scala.swing.ListView$selection$Indices: can't find referenced class scala.swing.ListView$selection
Warning: scala.swing.ListView$selection$indices$: can't find referenced class scala.swing.ListView$selection$indices
Warning: scala.swing.ListView$selection$indices$: can't find referenced class scala.swing.ListView$selection$indices
Warning: scala.swing.ListView$selection$indices$: can't find referenced class scala.swing.ListView$selection
Warning: scala.swing.ListView$selection$items$: can't find referenced class scala.swing.ListView$selection
如果我查看 jar,我发现确实没有这样的文件 - 有 scala.swing.ComboBox$selection$.class 而不是 scala.swing.ComboBox$selection.class。手动重命名并不能解决问题 - 然后它会抱怨文件包含具有不同名称的类。
那么,这些是 scala-swing.jar 中的非法引用吗?还是 Proguard 中的错误?
您能提出解决方法吗?
编辑:我正在使用 Scala 2.9.0.1 和 Proguard 4.6
EDIT2:使用 Scala 2.9.1.final jar 没有帮助。
【问题讨论】:
-
您可能想尝试在 ProGuard 论坛发帖:proguard.sourceforge.net/feedback.html
标签: java scala obfuscation proguard