如何使用Jenkins的Mac OS slave上的SonarQube Scanner分析Typescript项目?

时间:2018-01-11 16:22:01

标签: typescript jenkins sonarqube sonarqube-scan

我尝试使用Mac OS从站上的SonarQube Scanner插件分析Jenkins中的TypeScript项目。

工具

问题:

SonarTS插件尝试启动Node.js,但Node.js不在PATH变量中,请参阅日志:

Caused by: java.io.IOException: Cannot run program "node": error=2, No such file or directory
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
    at org.sonar.plugin.typescript.ExternalTypescriptSensor.executeExternalRunner(ExternalTypescriptSensor.java:175)

研究:

我尝试使用以下命令在Mac上配置路径:

我尝试将已添加的路径(/usr/bin/bin/usr/sbin/sbin)用于:

  • 符号链接

    但它不起作用,因为路径是写保护的(即使是管理员)。

我尝试将路径传递给SonarQube扫描仪:

我还阅读了有关更改呼叫源路径的信息:

2 个答案:

答案 0 :(得分:2)

如果您使用的是SonarTS 1.2或更高版本,您可以尝试使用SonarQube UI在设置中指定nodejs可执行文件的路径:

enter image description here

答案 1 :(得分:0)

另一种方法是使用Environment Injector Plugin(版本2.1.5):

  

<强>摘要

     

EnvInject插件提供以下功能:

     
      
  • 通过Jenkins Java进程删除继承的环境变量
  •   
  • 在节点(主/从)启动时注入环境变量
  •   
  • 在运行SCM结帐之前或之后执行设置脚本
  •   
  • 在运行SCM结帐之前或之后注入环境变量
  •   
  • 注入环境变量作为运行的构建步骤
  •   
  • 为运行注入密码值
  •   
  • 在构建结束时导出环境变量,以便了解用于每个构建的环境变量集
  •   

因此可以添加Node.js&#39; PATH变量的路径:

enter image description here