detekt蛇箱包
detekt snake case package
我将 detekt 添加到我的应用程序,但它抱怨我的包命名约定。
我使用包 snake_cased 和 class CamelCased。
例如:
package com.my_package
class MyClass
detekt 的输出如下:
NamingConventionViolation - [MyClass.kt] at com/my_package/MyClass.kt:1:1
我的命名约定配置如下:
NamingConventionViolation:
active: true
variablePattern: '^(_)?[a-z$][a-zA-Z[=12=]-9]*$'
constantPattern: '^([A-Z_]*|serialVersionUID)$'
methodPattern: '^[a-z$][a-zA-Z[=12=]-9]*$'
classPattern: '[A-Za-z$][a-zA-Z_.$]*'
enumEntryPattern: '^[A-Z$][a-zA-Z_$]*$'
我更改了默认的 class 模式以增加以小写字母开头并在 class 名称中包含 _ 的可能性,因为我知道 detekt 正在验证 FQN 而不仅仅是名称。
所以,我的问题是:如何设置 detekt 用于包名称的模式?
您可以使用 NamingConventionViolation
规则中的 packagePattern
参数设置您自己的包名称模式。
例如:
NamingConventionViolation:
active: true
variablePattern: '^(_)?[a-z$][a-zA-Z[=10=]-9]*$'
constantPattern: '^([A-Z_]*|serialVersionUID)$'
methodPattern: '^[a-z$][a-zA-Z[=10=]-9]*$'
classPattern: '[A-Za-z$][a-zA-Z_.$]*'
enumEntryPattern: '^[A-Z$][a-zA-Z_$]*$'
packagePattern: '[a-zA-Z_$]*'
我将 detekt 添加到我的应用程序,但它抱怨我的包命名约定。
我使用包 snake_cased 和 class CamelCased。
例如:
package com.my_package
class MyClass
detekt 的输出如下:
NamingConventionViolation - [MyClass.kt] at com/my_package/MyClass.kt:1:1
我的命名约定配置如下:
NamingConventionViolation:
active: true
variablePattern: '^(_)?[a-z$][a-zA-Z[=12=]-9]*$'
constantPattern: '^([A-Z_]*|serialVersionUID)$'
methodPattern: '^[a-z$][a-zA-Z[=12=]-9]*$'
classPattern: '[A-Za-z$][a-zA-Z_.$]*'
enumEntryPattern: '^[A-Z$][a-zA-Z_$]*$'
我更改了默认的 class 模式以增加以小写字母开头并在 class 名称中包含 _ 的可能性,因为我知道 detekt 正在验证 FQN 而不仅仅是名称。
所以,我的问题是:如何设置 detekt 用于包名称的模式?
您可以使用 NamingConventionViolation
规则中的 packagePattern
参数设置您自己的包名称模式。
例如:
NamingConventionViolation:
active: true
variablePattern: '^(_)?[a-z$][a-zA-Z[=10=]-9]*$'
constantPattern: '^([A-Z_]*|serialVersionUID)$'
methodPattern: '^[a-z$][a-zA-Z[=10=]-9]*$'
classPattern: '[A-Za-z$][a-zA-Z_.$]*'
enumEntryPattern: '^[A-Z$][a-zA-Z_$]*$'
packagePattern: '[a-zA-Z_$]*'