java - 自定义 Lint 规则未在 eclipse/android studio 中列出

标签 java android eclipse android-studio lint

我已经创建了自定义的 android Lint 检查规则,当我从命令行运行它时它运行良好,但 Android Studio 在使用“检查代码”检查它时不采用该规则。我在 android 的检查配置文件中选择了所有的 Lint 规则工作室。

我做的是

  1. 使用自定义 lint 检查规则创建 JAR
  2. 将 jar 放入 ~/.android/lint

当我从命令行运行 lint 检查时,它正常工作。 像下面的输出显示它检查规则。

lint OpenGLLearning
Scanning OpenGLLearning: ...............................
Scanning OpenGLLearning (Phase 2): ....

res/layout/activity_opengl.xml:8: Error: Edit Text ID Must be starting with et [etName]
<EditText
^

这里的 etName 是我创建的自定义 lint 规则的问题 ID。 但 Android Studio 不会在任何地方列出“etName”规则,并且在使用检查代码检查 lint 时不会显示错误。

当我运行时

./gradlew check

它会根据规则进行检查。当我在终端上运行 lint --list 命令时,自定义规则也会出现,但无法弄清楚为什么它没有被 Android Studio 中的 Inspect Code 检查。

我正在使用构建工具 21.0.2 和目标版本 21

最佳答案

我通过将 jar 模块添加到项目中并在 app.gradle 中明确指定 lint 依赖关系解决了这个问题

lintChecks project(':your_module_name')  

关于java - 自定义 Lint 规则未在 eclipse/android studio 中列出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26603621/

相关文章:

java - 光标似乎无法在 Android 应用程序中工作

java - 如何将 Java Swing 应用程序实现到触摸屏

android - GPGPU Android 模拟器 (Renderscript/OpenCL)

eclipse - Eclipse 中的 XSLT 2.0 没有额外的库?

java.lang.IllegalArgumentException : Unable to instantiate factory class: org. springframework.boot.env.EnvironmentPostProcessor 错误

Android + 在 Eclipse 调试器透视图中编辑步骤过滤器?

java - apk 文件中的 jsr305_annotations 文件夹

java - GWT AsyncCallback - 内部类共享

android - YouTube Android APIeekToMillis() 无法正常工作

android - 屏幕旋转后出现 nullPointerException