我試圖用Proguard縮小和混淆我的Scala/Java程序。雖然我只使用Scala的-library.jar,一切都很好,但是當我添加斯卡拉-swing.jar我的罐子,我得到如下:如何使用Proguard縮小scala swing庫?
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
如果我看着罐子,我看到真的沒有這樣的文件 - 有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罐子並沒有幫助。
你可能想嘗試在ProGuard的論壇中發帖:http://proguard.sourceforge.net/feedback.html –