gradle

java使用或覆盖了已过时的 API。有关详细信息请使用-Xlint:deprecation重新编译

 

【背景】

之前折腾:

【记录】Android Studio中导入OsmAnd并编译

期间,遇到了编译警告:

:OsmAnd-java:compileJava

注: E:\crifan\DevRoot\Osmand-master\OsmAnd-java\src\net\osmand\util\GeoPointParserUtil.java使用或覆盖了已过时的 API。

注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。

注: 某些输入文件使用了未经检查或不安全的操作。

注: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。

如图:

gradle_第1张图片

【解决过程】

1.之前不知道如何解决。然后也没影响继续编译,所以当时就没理会。

2.后来看到:

Android Studio系列教程四–Gradle基础

中的:

 

// 移除lint检查的error

lintOptions {

abortOnError false

}

猜测是,build.gradle中有对应的此处,可以添加lint的参数,估计上面说的:

 

-Xlint:deprecation

-Xlint:unchecked

的参数,或许可以放在这里。

所以去尝试一下。

但是在Osmand-java中的build.gradle中并没有看到那个(android下的)lintOptions

gradle_第2张图片

所以,还是去网上搜索这个问题吧。

3.搜:

android studio Xlint:deprecation

参考:

How to add -Xlint:unchecked to my Android Gradle based project? – Stack Overflow

去加上这个配置:

gradle_第3张图片

然后再去编译看看。

果然没了警告了:

gradle_第4张图片

【总结】

当Android Studio中编译java方面的代码,出现类似的警告:

  • 有关详细信息, 请使用 -Xlint:deprecation 重新编译。
  • 有关详细信息, 请使用 -Xlint:unchecked 重新编译。

时,去项目对应的build.gradle中添加配置:

 

allprojects {

gradle.projectsEvaluated {

tasks.withType(JavaCompile) {

options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"

}

}

}

即可消除警告。

转载于:https://www.cnblogs.com/a-d-a-m/p/5533674.html

你可能感兴趣的:(gradle)