我有一个 Android 项目,我需要从相同的来源构建相同应用程序的多个版本。
为此,我使用 android plugin for Maven
每个版本都必须能够包含来自 admob 的广告。所以在我的 POM 中我添加了这个依赖
<dependency>
<groupId>com.admob.android</groupId>
<artifactId>ads</artifactId>
<version>20101109-ANDROID-3312276cc1406347</version>
<scope>system</scope>
<systemPath>THE_PATH\libs\admob-sdk-android.jar</systemPath>
</dependency>
我在构建时没有收到任何错误,但是,当我执行应用程序时,我收到了这个异常
java.lang.ClassNotFoundException: com.admob.android.ads.AdView
很明显这个包没有正确包含?
最佳答案
您不能将系统范围用于运行时所需的库。将 jar 部署到本地存储库或存储库服务器(使用例如 mvn install:installFile ..)并从依赖声明中删除范围和系统路径。
更新:截至最新版本我的Maven Android SDK Deployer可以将 AdMob jar 从 SDK 安装到本地 Maven 存储库或存储库服务器中。
关于Android AdMob 和 Maven,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4960954/