プロジェクトを Android Studio / Gradle に移行しようとしていますが、 Ant を使用して正常に動作する jar に奇妙な問題が発生しています。RとBuildConfigがjarに含まれているようで、それらのパッケージ名は大文字で宣言されていますが、実際にはパッケージ構造では小文字として定義されています。(開発者の匿名性を保護するためにパッケージ名を変更しました。問題ないことを願っています)
予期しないトップレベルの例外:
com.android.dx.cf.iface.ParseException:クラス名 (com/companyname/UI/BuildConfig) がパス (com/companyname/ui/BuildConfig.class) と一致しません com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:520) で com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406) で com.android.dx.cf .direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388) com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251) で com.android.dx.command.dexer.Main.processClass(Main .java:665) com.android.dx.command.dexer.Main.processFileBytes(Main.java:634) で com.android.dx.command.dexer.Main.access$600(Main.java:78) で.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572) com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:284) com.android.dx.cf. direct.ClassPathOpener.processOne(ClassPathOpener.java:166) com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144) で com.android.dx.command.dexer.Main.processOne(Main.java:596) で com.android.dx .command.dexer.Main.processAllFiles(Main.java:498) com.android.dx.command.dexer.Main.runMonoDex(Main.java:264) で com.android.dx.command.dexer.Main.run (Main.java:230) com.android.dx.command.dexer.Main.main(Main.java:199) で com.android.dx.command.Main.main(Main.java:103) ... com/companyname/ui/BuildConfig.class の解析中com.android.dx.command.dexer.Main.run(Main.java:230) で runMonoDex(Main.java:264) com.android.dx.command.dexer.Main.main(Main.java:199) でcom.android.dx.command.Main.main(Main.java:103) で ... com/companyname/ui/BuildConfig.class の解析中com.android.dx.command.dexer.Main.run(Main.java:230) で runMonoDex(Main.java:264) com.android.dx.command.dexer.Main.main(Main.java:199) でcom.android.dx.command.Main.main(Main.java:103) で ... com/companyname/ui/BuildConfig.class の解析中
ここに私の質問があります:
- GradleではなくAntで動作するのはなぜですか?
- これは欠陥/バグと見なすべきですか、それとも設計上の決定ですか?
- 他のjarでこの問題を抱えている人がインターネット上で見つからないのはなぜですか?
- 問題を修正する方法について、開発者にどのようなアドバイスを与えることができますか?