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

maven中的aar导致ClassNotFoundException。不包括AAR的依赖项

尉迟默
2023-03-14
dependencies {
    compile 'com.android.support:support-v4:23.1.1'
    compile 'com.google.code.gson:gson:2.3.1'
    compile 'commons-codec:commons-codec:1.4'
    compile 'org.apache.commons:commons-lang3:3.4'
}
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <groupId>adsf.asdf.utils</groupId>
  <artifactId>utilities</artifactId>
  <version>2.0.0.0</version>
  <packaging>aar</packaging>
  <dependencies>
    <dependency>
      <groupId>com.google.code.gson</groupId>
      <artifactId>gson</artifactId>
      <version>2.3.1</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>com.android.support</groupId>
      <artifactId>support-v4</artifactId>
      <version>23.1.1</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-lang3</artifactId>
      <version>3.4</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>commons-codec</groupId>
      <artifactId>commons-codec</artifactId>
      <version>1.4</version>
      <scope>compile</scope>
    </dependency>
  </dependencies>
</project>

我正在使用android Studio V1.5构建工具23.0.2和gradle V2.8构建一个android应用程序。此ADT包于2016年1月下载。我的应用程序依赖于ustilies.aar。它被添加到应用程序的build.gradle中,使用网页中的代码片段,如下所示

compile(group: 'asdf.asdf.utils', name: 'utilities', version: '2.0.0.0', ext: 'aar')

Android Studio没有显示任何错误。它编译成一个apk fine,但当我运行它时,该应用程序立即崩溃,java.lang.noClassDefFounderRor:com.google.gson.gsonBuilder

gradle不应该自动下载gson并按照Artifactory Repo中的pom将其编译到apk中吗?我对maven、android studio、gradle等都是新手,我习惯于在Eclipse ADT中开发。如果有任何帮助,我将不胜感激。

共有1个答案

饶志
2023-03-14

Buddy这些库中的大多数包括gson都可以通过远程存储库获得。请尝试这篇文章的方法3:

https://stackoverflow.com/a/35369267/5475941

例如,gson搜索结果:

 类似资料:
  • 问题内容: 我看到了类似的问题,但未找到可接受的答案。问题-我有一些小功能我自己的android库。我的库使用其他库-fe Hawk(无sql数据库)。我的图书馆gradle文件: 图书馆工作正常。如果我将它用作另一个项目中的项目-它也可以工作。但是当我生成文件(带有-> )并包含到单独的项目中时-失败。项目仅查看我的图书馆的班级。Hawk com.orhanobut.hawk软件包和off其他软

  • 我正在从一个使用Android-Maven-Plugin的Maven项目中构建一个Android应用程序。在这个项目中,我使用了新的beta版数据绑定库。 它包含在Android SDK的本地m2repository中(extras/Android/m2repository)。这个存储库中的库打包为AAR类型。 附注:对于我自己的本地构建,我有几个解决方案(例如重新打包为jar),但我更喜欢一个更

  • 我写了一些库,其中有一部分UI。此外,这个库使用另一个库。我想提供发行版来在任何应用程序中使用这部分UI。 我得库有下一个依赖项: /home/user/projects/mainapp/app/build/intermediates/explodede-aar/com.my.sdk/sdk/0.0.1/res/values/values.xml:78:21-29:找不到与给定名称匹配的资源:at

  • 我有一个android gradle项目结构,看起来像这样 < li >模块1-aar < li >模块2-aar < li>testapp-apk 关键事实 模块2 aar取决于模块1 aar。 testapp apk取决于模块2 aar。 JDK11 Gradle 7.4.2 Androidgradle插件7.1.3 没有javadocs、gpg、签名或发布,一切都构建得很好。App运行,一切

  • 我正在为一个供应商做一个库项目,它需要Android Volley作为一个依赖项。我已经在Android Studio中使用了这个Create aar文件来创建.aar文件,并将其包含在一个测试项目中,我正在使用这个添加本地.aar文件到使用“flatdirs”的Gradle build中是不起作用的。库链接精细,项目编制无差错。但在运行时,测试应用程序崩溃,说它找不到Volley 我的图书馆项目

  • 我使用的是Android Studio1.4