跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • android 打包 aar,第三方远程依赖无法打入包内,请大佬指教
未分類
13 1 月 2021

android 打包 aar,第三方远程依赖无法打入包内,请大佬指教

android 打包 aar,第三方远程依赖无法打入包内,请大佬指教

資深大佬 : hotlook10 4

试过很多方法,fat-aar-android 打包之后,还是没有打入包内,请大佬指教
大佬有話說 (13)

  • 資深大佬 : anxiousPumpkin

    这。。 是不是应该贴一点信息或特征出来?

  • 資深大佬 : JayFang1993

    https://github.com/kezong/fat-aar-android 亲试有效,可能你的姿势不对

  • 資深大佬 : ZoteTheMighty

    @JayFang1993 正解,打 jar 或者 aar 包时如果是远程的依赖 as 不会打进包里,要用这个插件,或者下载下来手动依赖。apk 包就可以。

  • 資深大佬 : chenjiajia9411

    也有可能是你开了 minifyEnabled 然后被优化掉了。

  • 主 資深大佬 : hotlook10

    @JayFang1993
    我们用的就是这个,打包的库引用了 Retrofit
    集成进去之后调用会报错
    java.lang.NoClassDefFoundError: Failed resolution of: Lokhttp3/HttpUrl;
    at retrofit2.Retrofit$Builder.baseUrl(Retrofit.java:506)
    at com.zh.pocket.base.http.impl.RetrofitCallFactory.<init>(RetrofitCallFactory.java:20)
    at com.zh.pocket.base.http.impl.ApiFactory.<init>(ApiFactory.java:23)
    at com.zh.pocket.base.http.impl.ApiFactory.<clinit>(ApiFactory.java:16)
    at com.zh.pocket.base.http.impl.ApiFactory.create(ApiFactory.java:41)

  • 主 資深大佬 : hotlook10

    @ZoteTheMighty 因为 retrofit 依赖 okhttp 的,所以会报上述错误,有解决方案吗

    java.lang.NoClassDefFoundError: Failed resolution of: Lokhttp3/HttpUrl;
    at retrofit2.Retrofit$Builder.baseUrl(Retrofit.java:506)
    at com.zh.pocket.base.http.impl.RetrofitCallFactory.<init>(RetrofitCallFactory.java:20)
    at com.zh.pocket.base.http.impl.ApiFactory.<init>(ApiFactory.java:23)
    at com.zh.pocket.base.http.impl.ApiFactory.<clinit>(ApiFactory.java:16)
    at com.zh.pocket.base.http.impl.ApiFactory.create(ApiFactory.java:41)

  • 主 資深大佬 : hotlook10

    @anxiousPumpkin

    打包的库引用了 Retrofit,集成进去之后调用会报错,因为 retrofit 依赖 okhttp 的,所以会报上述错误,请问下有解决方案吗
    java.lang.NoClassDefFoundError: Failed resolution of: Lokhttp3/HttpUrl;
    at retrofit2.Retrofit$Builder.baseUrl(Retrofit.java:506)
    at com.zh.pocket.base.http.impl.RetrofitCallFactory.<init>(RetrofitCallFactory.java:20)
    at com.zh.pocket.base.http.impl.ApiFactory.<init>(ApiFactory.java:23)
    at com.zh.pocket.base.http.impl.ApiFactory.<clinit>(ApiFactory.java:16)
    at com.zh.pocket.base.http.impl.ApiFactory.create(ApiFactory.java:41)

  • 資深大佬 : JayFang1993

    @hotlook10 姿势不对 我之前是可以的

  • 主 資深大佬 : hotlook10

    @JayFang1993 换了 3 种体位了

  • 資深大佬 : xmt328

    不建议把外部依赖打进去,让使用方自己去导入相关依赖

  • 資深大佬 : HangoX

    我提供另外一个思路吧,普通发布之后,新建一个 java 项目依赖这个依赖,然后打 war 包,这个时候你这个包需要的依赖都会出现在 war 包中,只是不是都在 aar 中,但是能都导入

  • 資深大佬 : katana97

    先把 aar 传到 maven 仓库里,再引用就有了

  • 主 資深大佬 : hotlook10

    @katana97 这种,我不知道怎么做混淆。。。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具