小编Sib*_* JV的帖子

禁用特定java包的所有checkstyle检查

我有两个包

COM/MYDOMAIN/ABC /代表/ XYZ/JAXWS /管理

com/mydomain/abc/xyz/jaxws/managed

我要求只为第二个包禁用checkstyle,因为它们包含自动生成的代理类.

我使用了一个suppress.xml,如下所示

<?xml version="1.0"?>

<!DOCTYPE suppressions PUBLIC
    "-//Puppy Crawl//DTD Suppressions 1.1//EN"
    "suppressions_1_1.dtd">

<suppressions>
       <!-- Suppress JavadocPackage in the test packages -->
       <suppress checks="JavadocPackage" files="[\\/]test[\\/]"/>

    <!-- Suppress all checkstyle for autogenerated jaxws.managed package -->
    <suppress checks="[a-zA-Z0-9]*" files="([^(delegate)])+([a-z]*[\\/]jaxws[\\/]managed[\\/])+"/>
</suppressions>
Run Code Online (Sandbox Code Playgroud)

请注意,禁用JavadocPackage检查的第一次禁止工作正常但第二次没有.我担心我选择包的正则表达可能是错误的.任何帮助深表感谢.

用一个例子说明我的要求:

选择的标准是包名称应该以包名称jaxws.managed包含但不应包含delegate在包名称中.delegate应该jaxws.managed在包名称之前提供更多内容:

例如:com.mycomany.delegate.service.jaxws.managed必须启用包中的checktyle检查,同时com.mycompany.abc.service.jaxws.service必须禁用,并且需要注意的是,除了此模式之外,我不知道所有的pakages名称.

谢谢并问候Sibi

java regex xml checkstyle

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

在 Bash 脚本中使用日志记录

我有一个 bash 脚本,我需要从中写入日志。目前我使用像下面这样的块

#log stop request
            {
                local now=$(date +"%a %b %d %Y %H:%M:%S")

                printf "batch stop request successful. \n"
                printf "      Time            :: %s\n" "$now"
                printf "      PID of process  :: %s\n" ${PID[0]}"
            } >> "${mylogfile}"
Run Code Online (Sandbox Code Playgroud)

其中 mylogfile 变量将包含日志文件的名称。

这种方法的问题在于,当 2 个或更多实例运行时,日志往往会因实例的交错写入而变得混乱。

请注意,我使用该块认为这会导致日志一次性写入文件,从而避免了该问题。

我在Vivek Gite 帖子中看到了 logger 命令。但问题是它不会写入我可以指定的文件,而是写入 /var/log/message。

任何帮助深表感谢。

谢谢并问候西比

bash logging

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

标签 统计

bash ×1

checkstyle ×1

java ×1

logging ×1

regex ×1

xml ×1