sonarqube 打字稿插件:"You must install a plugin that supports the language"
sonarqube typescript plugin: "You must install a plugin that supports the language"
我正在尝试设置 SonarQube 以使用此插件分析我的 TypeScript 项目:https://github.com/Pablissimo/SonarTsPlugin
但是,我遇到了如下错误:
> C:\sonarqube\sonar-runner-2.4\bin\sonar-runner.bat
...
INFO:
------------------------------------------------------------------------
INFO: EXECUTION FAILURE
INFO: ------------------------------------------------------------------------
Total time: 3.006s
Final Memory: 18M/613M
INFO: ------------------------------------------------------------------------
ERROR: Error during Sonar runner execution
ERROR: Unable to execute Sonar
ERROR: Caused by: You must install a plugin that supports the language 'typescript'
ERROR:
ERROR: To see the full stack trace of the errors, re-run SonarQube Runner with the -e switch.
ERROR: Re-run SonarQube Runner using the -X switch to enable full debug logging.
我的设置:
- Windows 7 64 位
- JDK8 (1.8.0) 64 位
- SonarQube 5.1 64 位
我已经从源代码构建了插件,并将生成的 .jar 文件复制到我位于 C:\sonarqube\sonarqube-5.1\extensions\plugins\sonar-typescript-plugin-0.1-SNAPSHOT.jar
的 SonarQube 安装中。
SonarQube 运行正在为端口 9000 服务,我可以在设置->系统->更新中心看到安装了 TypeScript 插件,语言关键字 typescript
.
基于this post,看来我必须:
Login to your Sonar instance, click on "Settings" > "Quality profiles" and "Create" on top of the heading for the language you want to use.
查看这些设置,我看到一个 Typescript Profiles
标题,定义了 TsLint
配置文件并设置为默认值。
最后,在我的项目根目录下,我有一个文件sonar-project.properties
# Required metadata
sonar.projectKey=my-ts-project
sonar.projectName=A TypeScript Project
sonar.projectVersion=1.0
# Comma-separated paths to directories with sources (required)
sonar.sources=src
# Language
sonar.language=typescript
# Encoding of the source files
sonar.sourceEncoding=UTF-8
所有这些配置就绪后,我仍然收到 sonar-runner 错误 "You must install a plugin that supports the language"。
我错过了什么?
编辑:
我尝试安装 JavaScript 插件,但遇到了同样的问题。所以这不仅限于 TypeScript。我可以 运行 Sonar 针对 Java 项目,但似乎没有其他语言可用。
好的,我想出了解决这个具体问题的方法。我的 sonar-project.properties
中的键 sonar.language
应该设置为 ts
,而不是 typescript
。
# Language
sonar.language=ts
我通过查看对应于 java 脚本插件的示例项目解决了这个问题:https://github.com/SonarSource/sonar-examples/blob/master/projects/languages/javascript/javascript-sonar-runner/sonar-project.properties。在这里,语言设置为 js
而不是 javascript
。
我不得不猜测,一般来说,语言键应该设置为源文件的正常文件扩展名?即 Java -> .java, JavaScript -> .js, TypeScript -> .ts ... 如果是这样,那么这并不明显。有什么方法可以证实这个预感吗?
这是可能的 sonar.language 值
C# => "cs"
CSS => "css"
SCSS => "scss"
Less => "less"
Java => "java"
Web => "web"
XML => "xml"
JSON => "json"
JavaScript => "js"
使用 -X 开关安装所需的插件和运行 扫描仪,您可以在声纳日志中找到必要的值。
我正在尝试设置 SonarQube 以使用此插件分析我的 TypeScript 项目:https://github.com/Pablissimo/SonarTsPlugin
但是,我遇到了如下错误:
> C:\sonarqube\sonar-runner-2.4\bin\sonar-runner.bat
...
INFO:
------------------------------------------------------------------------
INFO: EXECUTION FAILURE
INFO: ------------------------------------------------------------------------
Total time: 3.006s
Final Memory: 18M/613M
INFO: ------------------------------------------------------------------------
ERROR: Error during Sonar runner execution
ERROR: Unable to execute Sonar
ERROR: Caused by: You must install a plugin that supports the language 'typescript'
ERROR:
ERROR: To see the full stack trace of the errors, re-run SonarQube Runner with the -e switch.
ERROR: Re-run SonarQube Runner using the -X switch to enable full debug logging.
我的设置: - Windows 7 64 位 - JDK8 (1.8.0) 64 位 - SonarQube 5.1 64 位
我已经从源代码构建了插件,并将生成的 .jar 文件复制到我位于 C:\sonarqube\sonarqube-5.1\extensions\plugins\sonar-typescript-plugin-0.1-SNAPSHOT.jar
的 SonarQube 安装中。
SonarQube 运行正在为端口 9000 服务,我可以在设置->系统->更新中心看到安装了 TypeScript 插件,语言关键字 typescript
.
基于this post,看来我必须:
Login to your Sonar instance, click on "Settings" > "Quality profiles" and "Create" on top of the heading for the language you want to use.
查看这些设置,我看到一个 Typescript Profiles
标题,定义了 TsLint
配置文件并设置为默认值。
最后,在我的项目根目录下,我有一个文件sonar-project.properties
# Required metadata
sonar.projectKey=my-ts-project
sonar.projectName=A TypeScript Project
sonar.projectVersion=1.0
# Comma-separated paths to directories with sources (required)
sonar.sources=src
# Language
sonar.language=typescript
# Encoding of the source files
sonar.sourceEncoding=UTF-8
所有这些配置就绪后,我仍然收到 sonar-runner 错误 "You must install a plugin that supports the language"。
我错过了什么?
编辑:
我尝试安装 JavaScript 插件,但遇到了同样的问题。所以这不仅限于 TypeScript。我可以 运行 Sonar 针对 Java 项目,但似乎没有其他语言可用。
好的,我想出了解决这个具体问题的方法。我的 sonar-project.properties
中的键 sonar.language
应该设置为 ts
,而不是 typescript
。
# Language
sonar.language=ts
我通过查看对应于 java 脚本插件的示例项目解决了这个问题:https://github.com/SonarSource/sonar-examples/blob/master/projects/languages/javascript/javascript-sonar-runner/sonar-project.properties。在这里,语言设置为 js
而不是 javascript
。
我不得不猜测,一般来说,语言键应该设置为源文件的正常文件扩展名?即 Java -> .java, JavaScript -> .js, TypeScript -> .ts ... 如果是这样,那么这并不明显。有什么方法可以证实这个预感吗?
这是可能的 sonar.language 值
C# => "cs"
CSS => "css"
SCSS => "scss"
Less => "less"
Java => "java"
Web => "web"
XML => "xml"
JSON => "json"
JavaScript => "js"
使用 -X 开关安装所需的插件和运行 扫描仪,您可以在声纳日志中找到必要的值。