如何添加-Xlint:取消选中我的基于Android Gradle的项目?
我试图将以下内容添加到根build.gradle
文件中:
subprojects { gradle.projectsEvaluated { tasks.withType(Compile) { options.compilerArgs << "-Xlint:unchecked -Xlint:deprecation" } } }
但是我得到这个:
FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':Libraries:ActionBarSherlock:compileRelease'. > invalid flag: -Xlint:unchecked -Xlint:deprecation
我究竟做错了什么?
这对我来说是有效的:
allprojects { gradle.projectsEvaluated { tasks.withType(JavaCompile) { options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation" } } }
根据JavaCompile ,以下似乎是解决scheme:
compileJava { options.encoding = 'UTF-8' options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation" }
如果你想要testing用例,使用compileTestJava
compileTestJava { options.encoding = 'UTF-8' options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation" }
我有一个不同的编译参数来设置。 以下为我工作。
gradle.projectsEvaluated { tasks.withType(JavaCompile) { options.compilerArgs << "-XDignore.symbol.file" options.bootClasspath = "$System.env.JAVA_HOME/jre/lib/rt.jar" } }
您必须为JDK 1.8及更高版本设置类似Unsafe和sun.swing。*类的启动类path。 修复源代码,特别是后者,因为JRE Java 9,即将到来的JRE模块化实现,将最终使这些方法无法访问(!)。 考虑你自己的警告。