问题标签 [scalastyle]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - 如何使用scalastyle检查scala中记录器变量的命名约定?
假设我需要确保我的 scala 代码中的所有记录器都被命名为log
only、LOGGER
notLOG
或logger
。因此,对于这种样式检查,我需要定义一个Logger
(用于 slf4j 或 log4j),并且当样式检查器检测到具有这种类型的变量时,它会检查名称。
我看到org.scalastyle.scalariform.FieldNamesChecker,但没有看到任何类型检查器,那么是否可以使用scalastyle规则来做到这一点?
scala - 文件行长度超过 100 个字符
我在编译 spark 版本 1.3.1 时遇到问题。当我编译了spark提供的原始源代码时,就可以了。但是当我将一些源文件添加到 mllib 中时,它出现了错误,例如:
- message=文件行长度超过 100 个字符
根据编译结束时的信息
- [错误] 无法在项目 spark-mllib_2.10 上执行目标 org.scalastyle:scalastyle-maven-plugin:0.4.0:check(默认):scalastyle 执行期间失败:您有 53 次 Scalastyle 违规。-> [帮助 1]
应该是因为 scalastyle 测试。我可以通过关闭 scalastyle 的验证来完成我的编译过程。
但是还有其他方法可以解决这个问题吗?我不认为仅仅关闭验证就足够了
错误示例代码:
好一个
坏的
scala - 有没有更好的方法在 IntelliJ 下设置 ScalaStyle?
IntelliJ 的 Scala 插件中有一些 scalastyle 支持。这个问题是关于设置它以获取 scalastyle 配置文件的最佳方法,该配置文件通常位于名称下的目录的根目录scalastyle-config.xml
(例如Spark 项目)。
目前,要让 IntelliJ 中的 scalastyle 插件获取我们的 scalastyle 配置,您需要将其副本放入您的.idea
文件夹中(据说.project
也可以,但我还没有测试过)。此外,文件需要命名scalastyle_config.xml
(使用下划线而不是连字符)。简而言之,您需要在项目的根目录中调用以下内容:
cp scalastyle-config.xml .idea/scalastyle_config.xml
虽然我认为这是一个丑陋的 hack,但它至少让我在构建整个项目之前看到了 scalastyle 违规。如果您对此有更好的解决方案,请告诉我。
scala - scalastyleConfigUrl 的使用
我对 Scala 和 SBT 很陌生
我正在尝试使用 Scalastyle 设置项目。从命令行运行时一切正常,但是我找不到定义选项的方法,如 Scalastyle 网站 http://www.scalastyle.org/sbt.html上所示
我试图在plugins.sbt
val scalastyleConfigUrl = Some(url(" http://www.scalastyle.org/scalastyle_config.xml "))
我不确定如何验证这是否有效;我希望scalastyle_config.xml
在每次编译时下载,显然我错过了一些东西。
第二部分,我想自动化 scalastyle 在每次编译/构建时运行。怎样才能做到这一点?
谢谢
scala - 如何将 scalastyle-result.xml 转换为可读报告
我正在为 scala 项目设置各种分析工具。其中之一是 checkstyle,我为此使用了“scalastyle”。
由于运行,此插件生成不易阅读的 scalastyle-result.xml。有没有办法将此 XML 转换为其他可读格式?这个想法是生成报告作为 CI 的一部分(这不是问题),并将报告公开给公众(最好是 HTML)。
如果可以使问题更容易解决,则任何其他 checkstyle 工具都可以正常工作。
谢谢,
maven - 如何在 Jenkins Maven 作业中发布 Scalastyle 结果?
我们有一个 Scala 项目并使用 Maven 和 Jenkins 来构建它。现在我们还想使用 Scalastyle 进行静态代码分析。它在 IDE 中运行良好,如果我使用 Jenkins 自由式工作。输出文件被创建,Jenkins 显示了一个带有样式警告和错误的漂亮图表。
但是,如果我使用 Jenkins Maven 作业,“Checkstyle 趋势”仍然为空,尽管 xml 文件在那里并且具有正确的名称 (checkstyle-result.xml)。
我找到了这个。那里的讨论有点混乱,但我知道发布 Scalastyle 结果也应该适用于 Maven 工作。
我弄错了吗?或者实际上有没有办法让詹金斯为我的 Maven 工作发布 Scalastyle 结果?还是某种解决方法?(除了使用自由式工作或 SBT ......)
scala - Scalastyle 布尔表达式可以简化
Scalastyle(intellij 2016.1 默认值)说这个布尔表达式可以简化
我可以通过将 if 更改为:
或者通过将 && 更改为 &
但并没有真正看到这是如何简化它的,谁能解释发生了什么?
更新 它似乎与在编译时是否已知 val 或它们是在本地定义的无关。以下代码还得到了表达式可以简化的警告:
我只是不明白我应该如何让它变得更简单,是否有一些奇怪的 Option[Boolean] 比较我错过了?
scala - 在 SBT 多项目构建中运行 scalastyle
我有一个多项目构建设置的 SBT 项目。
- 根
- 子项目A(根依赖它)
- 子项目B(根依赖它)
我只想为项目中的几个文件运行 scalastyle,这些文件可能位于三个项目中的任何一个中。为了选择这些文件,我scalastyleSources
在运行之前从命令行修改,scalastyle
如下所示:
这root
在我指定的文件上正确运行,但随后又为 sub-projectA 和 sub-projectB 运行了两次,完全忽略了我之前分配给scalastyleSources
.
我需要一种方法让 SBT 知道我只想使用更改的配置运行一次 scalastyle,或者在运行命令时完全忽略某个项目的能力。
这可能吗?
scala - scalastyle 抱怨布尔值的 akka 发送
sender ! true
和
sender ! false
正在通过 scalastyle 生成“可以简化布尔表达式”警告。
我怎样才能让这些警告消失?
scalastyle - 在 Scalastyle 中允许下划线导入伴随对象的项目
我想让 scalastyle 忽略下划线导入,以防它是正在导入的伴随对象的字段(这对我来说很有意义):
UnderscoreImportChecker 负责这个检查,但它没有配置参数
这是类似的问题: Companion 类需要导入 Companion 对象方法和嵌套对象?
我想问是否有办法编写自定义检查器(我会尝试调查它)?
PS 我知道我可以使用 //scalastyle:off 或显式导入,但它会重复且使用不方便。