- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在努力改进我的团队的代码风格,而 ktlint 似乎是我们正在推出的 Kotlin 的完美解决方案。
我的问题是找到一个完整的示例来创建一个客户报告器,以便在运行 ktlint gradle 任务时允许自定义输出。 Ktlint 的文档说:
In short, all you need to do is to implement a Reporter and make it available by registering a custom ReporterProvider using META-INF/services/com.github.shyiko.ktlint.core.ReporterProvider. Pack all of that into a JAR and you're done.
但下面是一个简单的例子 here但我不知道将这些文件放在哪里,也不知道将 ktlint 推荐的这个“ jar ”放在哪里,或者它说我的自定义记者还没有找到。
有没有人举例说明这是如何工作的?谢谢。
最佳答案
看看mcassiano/ktlint-html-reporter或 one of the ktlint's built-in reporters .
简而言之,每个报告器都包含一个 Reporter、ReporterProvider 和一个服务定义(其中包含 ReporterProvider 实现类名):
$ cat src/main/kotlin/your/pkg/CustomReporter.kt
package your.pkg
import com.github.shyiko.ktlint.core.Reporter
class CustomReporter : Reporter {
...
$ cat src/main/kotlin/your/pkg/CustomReporterProvider.kt
package your.pkg
import com.github.shyiko.ktlint.core.ReporterProvider
class CustomReporterProvider : CustomReporter {
...
$ cat src/main/resources/META-INF/services/com.github.shyiko.ktlint.core.ReporterProvider
your.pkg.CustomReporterProvider
您需要将其打包到 JAR 中。
拥有 JAR 后,ktlint 可以通过以下方式之一加载它:
ktlint --reporter=custom,artifact=your.pkg:custom-reporter:0.1.0,output=target/output.html
(假设 your.pkg:custom-reporter :0.1.0
在 Maven Central/JCenter/JitPack 中可用)ktlint --reporter=custom,artifact=~/path/to/custom-reporter.jar
(来自 fs)来自类路径(如果您计划通过 Gradle/Maven/etc 使用 ktlint),例如
dependencies {
ktlint "com.github.shyiko:ktlint:$ktlintVersion"
ktlint "your.pkg:custom-reporter:0.1.0"
}
task ktlint(type: JavaExec, group: "verification") {
classpath = configurations.ktlint
main = "com.github.shyiko.ktlint.Main"
args "--reporter=custom", "src/**/*.kt"
}
关于android - Ktlint 自定义记者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51368558/
我的 android 项目中有多个模块。我有一个包含 ktlint 代码的 Gradle 文件。我通过在项目 Gradle 文件中写入该 Gradle 文件将其应用到每个模块。 subprojects
我正在努力改进我的团队的代码风格,而 ktlint 似乎是我们正在推出的 Kotlin 的完美解决方案。 我的问题是找到一个完整的示例来创建一个客户报告器,以便在运行 ktlint gradle 任务
我正在尝试在我的 android 项目上使用 ktlint。 目前我正在使用这些 gradle 插件: org.jlleitschuh.gradle.ktlint org.jlleitschuh.gr
如何以及在哪里可以在 ktlint 中禁用文件名? 我不想重命名这个类,但得到下一个错误: interface MainActivityContract should be declared in a
已更新 ktlint ,开始任务,一切正常。 这是我在 build.gradle 中的代码: configurations { ktlint } dependencies { impl
我正在尝试做什么:我正在尝试在本地 Windows 上安装 ktlint 我尝试过的: 在命令提示符下使用命令 curl -sSLO https://github.com/pinterest/ktli
我正在使用带有 ktlint 的 detekt 来格式化我的代码,如下所示。 detekt.gradle ext{ toolVersion = "1.0.0-RC16" } detekt {
According to this article, ktlint is an automatic linter with a built-in code style checker. 当我决定使用
我正在使用 ktlint maven 插件(第一次使用)运行 Kotlin 项目。但是每当我进行 Maven 构建时。我经常看到这样的失败 src/main/kotlin/com/myproject/
升级到 Java 16 后,我无法使 ktlint gradle 插件工作。它在 throw Execution failed for task ':runKtlintCheckOverMainSou
当我选择 Code → Optimize Imports 或 Code → Reformat Code 时,IntelliJ 会优化和排序导入,但即使我使用 Kotlin 代码样式中的代码样式设置,导
我想将 ktlint 使用的样式添加到 Android Studio,这样当我自己应用格式时,它会使用 ktlint 样式。 根据文档,我安装了ktlint CLI brew install ktli
升级到 Flutter 3.3.7 并运行“flutter pub outdated && flutter pub upgrade”后,我尝试像往常一样构建我的应用程序。但后来就出现了。 “评估项目‘
我是一名优秀的程序员,十分优秀!