小编bob*_*ght的帖子

Checkstyle找不到pressions.xml

我正在使用Gradle 5.0和Checkstyle 8.15。我有一个带有以下Checkstyle配置和抑制文件的Java项目:

  • config / checkstyle / checkstyle.xml
  • config / checkstyle / suppressions.xml

checkstyle.xmlsuppressions.xml像这样的引用:

<module name="SuppressionFilter">
    <property name="file" value="config/checkstyle/suppressions.xml"/>
</module>
Run Code Online (Sandbox Code Playgroud)

如果我对源运行checkstyle,它将失败:

$ ./gradlew checkstyleMain -xwebpack

  • 配置项目:默认为dev Spring配置文件

    任务:checkstyleMain失败

失败:构建失败,发生异常。

出了什么问题:任务':checkstyleMain'的执行失败。无法创建根模块:配置{/ Users / robert / dev / ...},类路径{/ Users / robert / dev / ...}。

尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获取更多日志输出。与--scan一起运行以获取完整的见解。

此构建中使用了不推荐使用的Gradle功能,使其与Gradle 6.0不兼容。使用“ --warning-mode all”来显示各个弃用警告。参见 https://docs.gradle.org/5.0/userguide/command_line_interface.html#sec:command_line_warnings

1秒内失败,3个可执行任务:1个已执行,2个最新

如果删除对的引用suppressions.xml,构建将完成(checkstyle查找在发现抑制后将被忽略的错误)。

我从文档中了解到,引用文件的根目录config/checkstyle/suppressions.xml是项目根目录。但是,事实似乎并非如此。

我是否不能正确设置Checkstyle?

java checkstyle gradle

5
推荐指数
1
解决办法
367
查看次数

NestJS 提供者需要无状态吗?

我是一名长期学习 NestJS 的 Spring 开发人员。这些相似之处是如此惊人,我很喜欢这让我变得高效。然而,一些文档让我对一件事感到困惑。

我尝试将 Nest“提供者”比作具有默认范围的 Spring beans。例如,我创建 @Injectable 服务类,并将它们视为类似于 Spring @Services。因此,我假设这些服务类需要是线程安全的 - 无状态等。但是,这里的 Nest 文档对我来说有点含糊,有点暗示这可能没有必要(强调我的):

对于来自不同编程语言背景的人来说,可能会意外地发现,在 Nest 中,几乎所有内容都在传入请求之间共享。我们有一个到数据库的连接池、具有全局状态的单例服务等。请记住,Node.js 不遵循请求/响应多线程无状态模型,在该模型中,每个请求都由单独的线程处理。因此,使用单例实例对于我们的应用程序来说是完全安全的。

如果单个请求不在自己的线程中处理,那么 Nest 提供程序可以包含可变状态吗?应用程序需要确保每个传入请求都以“干净的状态”开始 - 例如,使用 NestInterceptor 初始化该状态。但对我来说,该文档显示提供程序是作为单例创建的,因此可以用作类似于数据包装容器的东西,就像 Java 中的 ThreadLocal 一样。

我是否读错了,或者这是 Nest 和 Spring 之间的行为差​​异?

spring nestjs

2
推荐指数
1
解决办法
1254
查看次数

标签 统计

checkstyle ×1

gradle ×1

java ×1

nestjs ×1

spring ×1