我正在尝试使用CMD运行PMD
with test_table as (
select 11 ID, 'company1' Name, 100 Amount from dual union all
select 11 ID, 'company1' Name, 200 Amount from dual union all
select 22 ID, 'company2' Name, 100 Amount from dual union all
select 22 ID, 'company2' Name, 200 Amount from dual
)
SELECT
CASE
WHEN GROUPING(AMOUNT) = 1 THEN NAME||'-TOTAL' ELSE Name END,
ID,
SUM(Amount)
FROM test_table
GROUP BY GROUPING SETS ( (ID, Name, AMOUNT), (ID, NAME));
它在控制台上返回结果,但是我需要CSV文件上的结果。我该怎么办?
答案 0 :(得分:0)
您可以重定向它,但是首选方法是使用选项“ -reportfile”:
pmd -d "C:\refactoring-toy-example" -f csv -R rulesets/java/unusedcode.xml ^
-reportfile "C:\refactoring-toy-example\pmd-results.csv"
有关命令行选项的完整文档,请参见https://pmd.github.io/latest/pmd_userdocs_cli_reference.html。
与重定向相比,使用reportfile选项的优势在于,报告文件仅包含报告,但是在PMD执行期间重定向输出还将包含日志语句(尤其是如果您重定向stdout + stderr)。
请注意,您正在使用不赞成使用的规则集(unusedcode.xml)。考虑看看available rules和create your own ruleset。