首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在severityOverrides中设置lintOptions?

如何在severityOverrides中设置lintOptions?
EN

Stack Overflow用户
提问于 2016-02-12 02:28:40
回答 4查看 952关注 0票数 15

我有一个Android项目定义

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        // Android plugin for gradle
        // http://google.github.io/android-gradle-dsl
        classpath 'com.android.tools.build:gradle:1.5.0'

        // ...

在我的应用程序中我想设置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
android {
    // ...

    lintOptions {
        // http://google.github.io/android-gradle-dsl/1.5/com.android.build.gradle.internal.dsl.LintOptions.html#com.android.build.gradle.internal.dsl.LintOptions:severityOverrides
        severityOverrides {
            ["MissingTranslation": "warning"]
        }

        // ...

但我明白错误

错误:(34,0) Gradle DSL方法没有找到:'severityOverrides()‘可能的原因:项目'android’可能正在使用不包含该方法的Gradle版本。

设置severityOverrides的正确方法是什么?

确实编译但对:app:lintVitalRelease构建步骤没有预期效果的版本:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import com.android.builder.model.LintOptions
// ...
severityOverrides ["MissingTranslation": LintOptions.SEVERITY_WARNING]

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import com.android.builder.model.LintOptions
// ...
severityOverrides.MissingTranslation = LintOptions.SEVERITY_WARNING
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2016-04-15 06:34:54

我想和大家分享我正在做的事情。

与set severityOverrides不同,您可以对要设置的每种类型的标志调用一个方法。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
lintOptions {
    ignore "RtlEnabled", "RtlHardcoded", "RtlSymmetry" ....
    warning "RtlEnabled", "RtlHardcoded", "RtlSymmetry" ....
    error "RtlEnabled", "RtlHardcoded", "RtlSymmetry" ....
    fatal "RtlEnabled", "RtlHardcoded", "RtlSymmetry" ....
    informational "RtlEnabled", "RtlHardcoded", "RtlSymmetry" ....
}

就你而言,你可以:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
lintOptions {
    warning "MissingTranslation"
}

我不确定是否可以手动设置severityOverrides,因为它是只读属性。

因此,我认为您必须调用上述方法之一(错误、致命等)。若要重写所需的属性,请执行

票数 14
EN

Stack Overflow用户

发布于 2016-02-26 06:25:51

(不是答案,但当我无法让lintOptions.severityOverrides工作时,我就用它作为等效的替代物)

在模块根目录下放置具有相同配置的lint.xml文件。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?xml version="1.0" encoding="UTF-8" ?>
<lint>
    <issue id="MissingTranslation" severity="warning" />
</lint>

您还可以获得一个更丰富的API来通过lint.xml优化lint警告。

票数 3
EN

Stack Overflow用户

发布于 2016-02-26 03:59:28

Map<String, Integer> severityOverrides

您所链接的文档表明,severityOverrides的类型应该是Map<String, Integer>,因为您使用的是两个字符串。而且,severityOverrides似乎不是一个方法,而是一个属性,因此您应该省略大括号{},它提供:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import com.android.builder.model.LintOptions
lintOptions {
    severityOverrides ["MissingTranslation": LintOptions.SEVERITY_WARNING]
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35360240

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文