4

我想在 android 项目中使用 apache olingo odata 库。由于 apache 为 android 提供了一个特定的构建,我把它作为我的 build.gradle 文件的依赖项。

compile 'org.apache.olingo:odata-client-android:4.0.0'

在构建应用程序时,我遇到了多个 InvalidPackage lint 错误:

举个例子:

InvalidPackage: Package not included in Android
 odata-client-android-4.0.0.jar: Invalid package reference in library; 
 not included in Android: javax.activation. Referenced from
 com.fasterxml.jackson.module.jaxb.deser.DataHandlerJsonDeserializer.

javax.xml.bind包也有 InvalidPackage 错误

作为解决方案,建议在 build.gradle 中添加以下规则:

android {
    lintOptions {
        abortOnError false
    }
}

所以我的问题是:

  • 添加此规则是否安全?我怎么能确定这不会在以后导致一些运行时错误。
  • 由于该工件是专门为 android 设计的,不应该在那里修复这些错误吗?还是我错过了其他东西。

提前感谢您的帮助

4

1 回答 1

2

InvalidPackagelint 检查会标记 Android 默认情况下不包含的包。如果您确定该javax.activation软件包也没有在 Android 上使用,因为它们提供了单独的代码路径来使用它,您可以禁用该检查。

lintOptions {
  disable 'InvalidPackage',...
}

要获取有关实际错误的更多信息,您可以使用lint --show InvalidPackage

于 2015-12-03T22:44:37.987 回答