CMD 在 Azure devops 命令行任务中以代码 4 退出
CMD exiting with code 4 in Azure devops Command line task
我在 Azure DevOps 管道的 windows 图像中有一个命令行任务 运行。
此任务在执行 pmd.bat 命令后以代码 4 退出。这在我的本地 CMD 中运行得非常好。
task: CmdLine@2
inputs:
script: |
echo starting execution
cd $(Build.SourcesDirectory)
xcopy *.jar $(Build.SourcesDirectory)\code\
cd $(Build.SourcesDirectory)\pmd-bin-6.24.0\bin
pmd.bat -d "$(Build.SourcesDirectory)\code\src\apexcode.cls" -f xml -R "$(Build.SourcesDirectory)\code\build\MyApexRule.xml" -reportfile pmd.xml
任何人都可以帮助我解决问题吗?
在 PMD 中以代码 4 退出表明至少检测到一处违规。
这里有两个使命令起作用的解决方案:
您可以将参数<failurePriority>
设置为1(默认值为5),这样所有的违规行为都将被视为警告并显示在构建输出中。然后就可以看到命令哪里出错了
您可以将参数<failOnViolation>
设置为false
(默认值为true
),这样即使验证检查失败。与解决方案 1 的唯一区别是没有显示警告消息。
您可以在POM文件中设置参数:
<build>
<plugins>
<plugin>
<failurePriority>1</failurePriority>
<failOnViolation>false</failOnViolation>
</plugin>
</plugins>
</build>
或将它们设置为 pmd.bat 内联脚本的属性。
正如 Jane Ma-MSFT 正确解释的那样,退出代码 4 表示检测到一些违规并且构建失败。
有关文档,请参阅 https://pmd.github.io/latest/pmd_userdocs_cli_reference.html#exit-status。
4: At least one violation has been detected, unless -failOnViolation false is set.
如果您不希望构建失败而只想生成报告,则可以调整脚本以添加 -failOnVioltation false
:
Specifies whether PMD exits with non-zero status if violations are found. By default PMD exits with status 4 if violations are found. Disable this feature with -failOnViolation false
to exit with 0 instead and just output the report.
我在 Azure DevOps 管道的 windows 图像中有一个命令行任务 运行。 此任务在执行 pmd.bat 命令后以代码 4 退出。这在我的本地 CMD 中运行得非常好。
task: CmdLine@2
inputs:
script: |
echo starting execution
cd $(Build.SourcesDirectory)
xcopy *.jar $(Build.SourcesDirectory)\code\
cd $(Build.SourcesDirectory)\pmd-bin-6.24.0\bin
pmd.bat -d "$(Build.SourcesDirectory)\code\src\apexcode.cls" -f xml -R "$(Build.SourcesDirectory)\code\build\MyApexRule.xml" -reportfile pmd.xml
任何人都可以帮助我解决问题吗?
在 PMD 中以代码 4 退出表明至少检测到一处违规。
这里有两个使命令起作用的解决方案:
您可以将参数
<failurePriority>
设置为1(默认值为5),这样所有的违规行为都将被视为警告并显示在构建输出中。然后就可以看到命令哪里出错了您可以将参数
<failOnViolation>
设置为false
(默认值为true
),这样即使验证检查失败。与解决方案 1 的唯一区别是没有显示警告消息。
您可以在POM文件中设置参数:
<build>
<plugins>
<plugin>
<failurePriority>1</failurePriority>
<failOnViolation>false</failOnViolation>
</plugin>
</plugins>
</build>
或将它们设置为 pmd.bat 内联脚本的属性。
正如 Jane Ma-MSFT 正确解释的那样,退出代码 4 表示检测到一些违规并且构建失败。
有关文档,请参阅 https://pmd.github.io/latest/pmd_userdocs_cli_reference.html#exit-status。
4: At least one violation has been detected, unless -failOnViolation false is set.
如果您不希望构建失败而只想生成报告,则可以调整脚本以添加 -failOnVioltation false
:
Specifies whether PMD exits with non-zero status if violations are found. By default PMD exits with status 4 if violations are found. Disable this feature with
-failOnViolation false
to exit with 0 instead and just output the report.