当前位置: 首页 > 面试题库 >

Android:包含/重新打包引用Javax核心类的依赖项时出错

齐高寒
2023-03-14
问题内容

我正在使用Maven作为构建工具的Android应用程序上工作。我设法正确设置了Evertyhing(将Maven依赖项导出到apk等),但是我还有一个剩余的问题使我发疯。

我想在我的POM文件中包含对simpleframework的xml解析器的依赖,定义如下:

<dependency>
    <groupId>org.simpleframework</groupId> 
    <artifactId>simple-xml</artifactId>
    <version>2.5.3</version>
</dependency>

当我mvn install在项目上发布时,出现以下错误(被截断):

trouble processing "javax/xml/namespace/NameSpaceContext.class" ...

我知道来自引用这些javax类的简单xml解析器的错误结果,但是我还没有找到解决方案(设置–core-library标志没有用)。

我目前正在尝试使用maven-jarjar-pluging重新打包依赖关系,但这似乎也不起作用。

谁能帮我这个忙吗?非常感谢!


问题答案:

像这样定义您的simple-xml依赖:

<dependency>
    <groupId>org.simpleframework</groupId>
    <artifactId>simple-xml</artifactId>
    <version>2.6.1</version>
    <exclusions>
        <!-- StAX is not available on Android -->
        <exclusion>
            <artifactId>stax</artifactId>
            <groupId>stax</groupId>
        </exclusion>
        <exclusion>
            <artifactId>stax-api</artifactId>
            <groupId>stax</groupId>
        </exclusion>
        <!-- Provided by Android -->
        <exclusion>
            <artifactId>xpp3</artifactId>
            <groupId>xpp3</groupId>
        </exclusion>
    </exclusions>
</dependency>


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

  • 我有两个包作为Android项目中的依赖项:A和B,在中定义如下: 我可以生成项目,但是当尝试运行它时,我收到以下错误: :app:compileDebugSources app:transformClassesWithDexForDebug 意外的顶级异常: com.android.dex。DexException:多个dex文件定义了Lcommon/package/in/both/Depend

  • 项目中./gradlew build命令产生的jar包没有将build.gradle.kts中的dependencies的依赖包打进去,使用包时提示Package 'xxx.x' is not found ,如何解决呢? 希望:如何解决这个Package 'xxx.x' is not found问题,以及如何指定打的jar包的名称和版本

  • Spring BootBOM不包含tomcat dbcp的依赖项。 我有一个Spring MVC项目,其中我使用数据库连接池进行HiberNate ORM连接。这个项目是在Tomcat中部署的。在我的IntelliJ创意开发环境中,我使用了嵌入的Tomcat,通过使用sping-boot-starter-Tomcat。但是sping-boot-starter-Tomcat没有定义对Tomcat-d

  • 我正在开发一个Java项目,使用maven作为依赖项管理器/构建工具。我当前在将依赖项的依赖项解析到正确版本时遇到问题。 有问题的依赖项称为JasperReports-Functions-6.1.0.jar,它不是托管在maven repo中,而是以jar形式提供的。 如何强制jar依赖项使用子依赖项的某个版本?