我正在使用不使用 Gradle
的 Eclipse 构建 Android 应用程序。每当我运行该应用程序时,都会发生以下错误 -
01-12 15:31:49.874: E/AndroidRuntime(8125): java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/R$string; 01-12 15:31:49.874: E/AndroidRuntime(8125): at com.google.android.gms.common.internal.zzaj.(Unknown Source) 01-12 15:31:49.874: E/AndroidRuntime(8125): at com.google.firebase.FirebaseOptions.fromResource(Unknown Source) 01-12 15:31:49.874: E/AndroidRuntime(8125): at com.google.firebase.FirebaseApp.initializeApp(Unknown Source)
我认为错误是因为未启用 Multidex
。我如何在没有 gradle
的情况下启用它?还有其他可能导致此错误的原因吗?谢谢
最佳答案
当使用 Eclipse ADT for MultiDex 时,您也可以使用任一 Maven 来构建您的应用程序。
要使用 android-maven-plugin 激活 MultiDex,请遵循此 http://docs.repro.io/en/dev/sdk/getstarted/android-multidex.html#android-maven-pluginmultidex
您需要在 <project><build><plugins>
中添加以下代码 fragment 在你的 pom.xml 中标记
<plugin>
<groupId>com.simpligility.maven.plugins</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>4.3.0</version>
<extensions>true</extensions>
<configuration>
<sdk>
<platform>23</platform>
<path>${user.home}/Library/Android/sdk</path>
</sdk>
<androidManifestFile>${project.basedir}/AndroidManifest.xml</androidManifestFile>
<resourceDirectory>${project.basedir}/res</resourceDirectory>
<assetsDirectory>${project.basedir}/assets</assetsDirectory>
<nativeLibrariesDirectory>${project.basedir}/libs</nativeLibrariesDirectory>
<dex>
<multi-dex>true</multi-dex>
</dex>
</configuration>
</plugin>
关于android - 如何在没有 Gradle 的情况下在 Eclipse 中的 Android 项目上启用 multidex,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41608053/