zoukankan      html  css  js  c++  java
  • findbugs过滤R.java文件

        在第一次使用findbugs时检查出100多个Bad pratice,仔细一看原来全是R文件里面的类名首字母没有大写导致的。

        于是只有自己在findbugs设置界面中添加过滤条件来忽略掉R文件。

        

        在File-Settings-Other Settings-FindBugs IDEA的Filter中,在Exclude的那个框中点加号添加过滤文件,

        注意文件类型不是java,也不是文件夹,而是xml文件,文件内容为过滤规则。

        自己先写了个过滤R文件的xml文件,然而并没有想象中那么简单。。

    <?xml version="1.0" encoding="UTF-8"?>
    <FindBugsFilter>
        <Match>
               <Class name="com.work.checkpermission.R" />
        </Match>
    </FindBugsFilter>

        如果是过滤一些正常的类,如上语法是正确的,可能R文件比较特殊,这样写是无效的。

        正确的过滤R文件的xml文件如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <FindBugsFilter>
        <Match>
            <Or>
                <Class name="~.*.R$.*"/>
                <Class name="~.*.Manifest$.*"/>
            </Or>
        </Match>
    </FindBugsFilter>

        该xml无论什么名字,无论放在哪,只要添加进Exclude框中点击ok即可。

        同理,若想要筛选在哪些类中使用findbugs,可以指定相应规则然后添加到Include框中即可。

        关于findbugs的filter文件内容的具体语法可参考网址:http://findbugs.sourceforge.net/manual/filter.html

        这些规则可以是筛选/过滤类、方法、包、文件夹等等,全部可以自定义。

         

        然后在使用findbugs过程中工程还报出了一个编译错误:

        Error:Gradle: failed to create directory '...'
        ...

        > Failed to execute aapt

        在查阅资料中发现这好像是Android Studio 3.0才有的错误,

        解决方法是在gradle.properties文件的最后添加一行:android.enableAapt2=false

        也可以尝试使用工具栏Build-Clean Project清理项目,File-invalidate caches/restart清理缓存。

  • 相关阅读:
    无声的吐槽csdn
    成长
    最近忙的头发都油油的
    pycharm5工具免费分享及安装教程
    分布式版本控制git常见问题之gitignore冲突
    感觉自己还是太年轻,还有很多东西不会
    关于laravel5.2仓库的建立,以及简单调用
    乎,前所未有的挑战!
    嘿嘿,无聊的时候,来点好玩的,翻滚吧,杀马特!!!
    随便说说
  • 原文地址:https://www.cnblogs.com/LangZXG/p/9010724.html
Copyright © 2011-2022 走看看