Я - один шаг далеко от создания метода, описанного здесь: Предназначение для Android с Магистральными сборками Scala 2.8
работа с единственным проектом (по сравнению с одним проектом для scala и один для андроида).
Я столкнулся с проблемой. Используя этот входной файл (аргументы) прозащита:
-injars bin;lib/scala-library.jar(!META-INF/MANIFEST.MF,!library.properties)
-outjar lib/scandroid.jar
-libraryjars lib/android.jar
-dontwarn
-dontoptimize
-dontobfuscate
-dontskipnonpubliclibraryclasses
-dontskipnonpubliclibraryclassmembers
-keepattributes Exceptions,InnerClasses,Signature,Deprecated,
SourceFile,LineNumberTable,*Annotation*,EnclosingMethod
-keep public class org.scala.jeb.** { public protected *; }
-keep public class org.xml.sax.EntityResolver { public protected *; }
Прозащита успешно создает scandroid.jar, однако это, кажется, включало сгенерированные классы R, которые разработчик ресурса андроида генерирует и компилирует. В этом случае они расположены в bin/org/jeb/R*.class. Это не то, что я хочу. Андроид, который не может создать преобразователь Дальвика, потому что он думает, существует дубликат класса R (это находится в scandroid и также файлах R*.class). Как я могу изменить вышеупомянутые прозащитные аргументы для исключения файлов R*.class из scandroid.jar, таким образом, преобразователь Дальвика счастлив?Править: Я должен отметить, что пытался добавить; bin/org/jeb/R.class; и т.д.... к-libraryjars аргументу, и который только, казалось, заставил это жаловаться на дублирующиеся классы и кроме того проохранять решенный для исключения моих scala файлов класса также.
file filter !**/*R.java другими словами, эта примочка заставляет Proguard держать все java-файлы, кроме R.java, в обфускации