当前位置: 首页 > 知识库问答 >
问题:

将Android依赖项添加到Docker构建图像-Bitbucket管道(CI)

凤财
2023-03-14

我在bitbucket管道构建过程中收到了这个错误。我想念火药罐。

生成失败错误:

> Could not resolve all dependencies for configuration ':app:_debugApkCopy'.
   > Could not find com.google.firebase:firebase-core:10.0.0.
     Searched in the following locations:
         file:/usr/local/android-sdk/extras/android/m2repository/com/google/firebase/firebase-core/10.0.0/firebase-core-10.0.0.pom
         file:/usr/local/android-sdk/extras/android/m2repository/com/google/firebase/firebase-core/10.0.0/firebase-core-10.0.0.jar
         file:/opt/atlassian/pipelines/agent/build/sdk-manager/com/google/firebase/firebase-core/10.0.0/firebase-core-10.0.0.jar
     Required by:
         project :app
   > Could not find com.google.firebase:firebase-ads:10.0.0.
     Searched in the following locations:
         file:/usr/local/android-sdk/extras/android/m2repository/com/google/firebase/firebase-ads/10.0.0/firebase-ads-10.0.0.pom
         file:/usr/local/android-sdk/extras/android/m2repository/com/google/firebase/firebase-ads/10.0.0/firebase-ads-10.0.0.jar
         file:/opt/atlassian/pipelines/agent/build/sdk-manager/com/google/firebase/firebase-ads/10.0.0/firebase-ads-10.0.0.jar
     Required by:
         project :app
   > Could not find com.google.firebase:firebase-messaging:10.0.0.
     Searched in the following locations:
         file:/usr/local/android-sdk/extras/android/m2repository/com/google/firebase/firebase-messaging/10.0.0/firebase-messaging-10.0.0.pom
         file:/usr/local/android-sdk/extras/android/m2repository/com/google/firebase/firebase-messaging/10.0.0/firebase-messaging-10.0.0.jar
         file:/opt/atlassian/pipelines/agent/build/sdk-manager/com/google/firebase/firebase-messaging/10.0.0/firebase-messaging-10.0.0.jar
     Required by:
         project :app
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

有关环境的详细信息:

>

  • 使用Gradle的Android Studio项目

    Bitbucket(云)管道CI

    在我的Docker容器中为我的构建安装Firebase和其他未来的依赖项,这样管道就可以构建我的Android项目

    到目前为止我所拥有的:

    该应用程序在本地构建良好。您需要在Android Studio中进行构建的机器上安装Firebase(这是正常的)。然而,安装Firebase的所有说明要么是针对Javascript库,要么涉及打开Android Studio并安装它,这在docker容器中是不可能的。

    我现在的想法:

    将编译后的jar文件复制到构建目录中。

    IE:

    app\build\intermediates\exploded-aar\com.google.firebase\firebase-core\10.0.0\jars\classes.jar
    

    重命名它并将其复制到生成预期的目录

    我宁愿直接从web资源中获取它并以这种方式复制它,原因有两个:

    >

  • 我不确定这是否是它想要的jar文件

    如果它真的起作用了,那就是作弊,因为我正在从一个旧建筑中抓取一个神器。有点违背了CI系统的目的。

  • 共有1个答案

    姚棋
    2023-03-14

    我想通了。

    如果你想导入google play服务和其他android服务(在应用程序计费和其他方面),我制作了一张图片,涵盖了这一点:

    docker pull ePro95Z28/AndroidServices

    这是我在uber图像中更改的行,以包括其他库

    ENV ANDROID_COMPONENTS platform-tools,android-23,android-24,build-tools-23.0.2,build-tools-24.0.0, extra-android-m2repository, extra-android-support, extra-google-admob_ads_sdk, extra-google-analytics_sdk_v2, extra-google-google_play_services_froyo, extra-google-google_play_services, extra-google-m2repository, extra-google-play_apk_expansion, extra-google-play_billing, extra-google-play_licensing, extra-google-webdriver
    
     类似资料:
    • 我尝试了以下链接:https://docs.microsoft.com/en-us/azure/devops/artifacts/get-start-maven?view=azure-devops

    • 这是我的毕业档案 然而,当我使用gradlebuild时,当输出jar在Minecraft中运行时会发生以下错误 这是json中的代码。JAVA 我猜这是因为这个jar中没有依赖项(json-lib),但是我在构建配置文件中设置了它,我想问一下是什么原因导致了这个mod的完整代码(https://github.com/SiongSng/RPMTW-Update-Mod/tree/master/1.

    • 我正在使用JBOSS EAP 6.1和JDK 1.6。我已将所有依赖项注册为静态模块。我对JDK API有依赖性 在部署期间,我面临以下问题: java。lang.NoClassDefFoundError:javax/crypto/CipherInputStream java。lang.NoClassDefFoundError:org/omg/CORBA/portable/IDLEntity ja

    • 我试图建立持续集成(CI)在Bitbucket管道为Android。 我已经使用Android Studio 2.1.1创建了一个样例空白活动。 当运行时,会出现以下错误: 在工作目录中运行会得到:

    • 我被添加了谷歌云依赖项 但我的生成失败,出现以下错误 我尝试禁用批注处理器 我收到以下错误

    • 问题内容: 我有一个依赖 然后我执行。添加了所有本机文件和远程Maven库,但是没有此jar。 更新 当我尝试通过运行应用程序时。它返回一个错误,指出上述依赖项中没有任何类(NoClassDefFoundError:de.matthiasmann.twl.ForExample)。我想将这个jar中的类添加到myjar.jar中(与maven使用远程依赖项相同)。我如何配置Maven来做到这一点?