由于不熟悉javac 和 gradle, 这个问题高了整整一个晚上,都没有完全搞好啊。

遇到问题,先Google,连bing也用上了(还有一个别问我为什么没有用,有仇)。中文里面大部分是容器的泛型有问题,不用管。尼玛,这是程序员的态度吗?我想改代码,但我不知道错哪了啊?-Xlint:unchecked 和-Xlint:deprecation要加在哪里啊?

换了好多个关键字,终于在stackoverflow(这真是个好网站啊,我都打算只在这个站内搜索了)搜到了有用的东西:

http://stackoverflow.com/questions/18689365/how-to-add-xlintunchecked-to-my-android-gradle-based-project

在项目的build.gradle文件中加入:

allprojects {
    gradle.projectsEvaluated {
        tasks.withType(JavaCompile) {
            options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
        }
    }
}
然后就可以知道哪里错啦。如果是容器的泛型问题,比如
List<A> la = new ArrayList();
可将jdk设为1.7以上或者
改为List<A> la = new ArrayList<A>();

其他的照章处理。

另外,找个帖子科普了下关于-Xlint:

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐