Gradle lint 和测试构建错误 - JAXBException 和库中的无效包引用

今天我试图将一个 Android 项目添加到我正在运行 ./gradlew lint test 的 CIRCLE CI 中,以检查构建是否通过。问题是我遇到了一些烦人的错误,我花了好几个小时才解决它们:


在我的本地机器上,我得到:java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException


在 CIRCLE CI 上抛出以下错误:


前 3 个错误(共 10 个)是:/home/circleci/.gradle/caches/modules-2/files-2.1/javax.activation/activation/1.1.1/485de3a253e23f645037828c07f1d7f1af40763a/activation-1.1.1.jar: Error : 库中的包引用无效;未包含在 Android 中:java.awt.datatransfer。从 javax.activation.ActivationDataFlavor 引用。[InvalidPackage] /home/circleci/.gradle/caches/modules-2/files-2.1/javax.activation/activation/1.1.1/485de3a253e23f645037828c07f1d7f1af40763a/activation-1.1.1.jar:错误:库中的包引用无效;未包含在 Android 中:java.awt.event。引用自 com.sun.activation.viewers.TextEditor。[InvalidPackage] /home/circleci/.gradle/caches/modules-2/files-2.1/javax.activation/activation/1.1.1/485de3a253e23f645037828c07f1d7f1af40763a/activation-1.1.1.jar:错误:库中的包引用无效;未包含在 Android 中:java.awt。引用自 com.sun.activation.viewers.ImageViewer。[无效包]


我在我的 android 项目中使用数据绑定,以及 livedata 和 androidx。我已经在网上搜索了几个小时,但没有任何帮助。我试图通过以下方式消除错误:


lintOptions {

        abortOnError true

        lintConfig file("lint.xml")

    }


和 lint.xml:


<lint>

<issue id="InvalidPackage">

    <ignore path="**/activation*.jar"/>

</issue>

</lint>

在此先感谢您的帮助。如果需要,请询问更多信息!


噜噜哒
浏览 153回答 1
1回答

HUWWW

此错误是由您的 JDK 版本引起的(此 SO答案中有更好的解释)在 Mac 上,您可以尝试使用 brew 安装 JDK8 来解决问题。为此:从这个网站安装 Brew运行brew tap adoptopenjdk/openjdk启用adopto open jdk formulas(官方已经没有了)。运行brew cask install adoptopenjdk/openjdk/adoptopenjdk8安装open jdk 8运行brew install jenv以安装 jenv(Java 版本管理器)运行echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc并且&nbsp;echo 'eval "$(jenv init -)"' >> ~/.zshrc如果你使用 ZSH 或者echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile如果&nbsp;echo 'eval "$(jenv init -)"' >> ~/.bash_profile你使用 BASH关闭并再次打开控制台运行jenv add Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home添加jdk版本8运行jenv versions以列出您已安装的版本跑去jenv global <name of version>换另一个在此网站上了解有关 jenv 的更多信息您还可以按文件夹而不是全局配置 java 版本
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java