使用 SonarCloud 和 Azure DevOps 分析 Javascript/Typescript 个项目
Analyse Javascript/Typescript project with SonarCloud and Azure DevOps
我有一个包含 Javascript 和 Typescript 文件的项目。我正在使用 SonarCloud 从 Azure DevOps 管道分析这个项目。
我在我的构建管道中这样设置任务准备分析配置:
- task: SonarCloudPrepare@1
inputs:
SonarCloud: 'Sonarcloud'
organization: 'MyOrg'
scannerMode: 'CLI'
configMode: 'manual'
cliProjectKey: 'My key'
cliProjectName: 'My name'
cliSources: '.'
当 运行 管道时,我的管道在 Sonar Cloud Analyze 步骤
中出现以下错误
INFO: Found 1 tsconfig.json file(s): [/home/vsts/work/1/s/tsconfig.json]
##[error]ERROR: Cannot find module 'typescript'
##[error]ERROR: TypeScript dependency was not found and it is required for analysis.
ERROR: Install TypeScript in the project directory or use NODE_PATH env. variable to set TypeScript location, if it's located outside of project directory.
ERROR: TypeScript dependency was not found and it is required for analysis.
ERROR: Install TypeScript in the project directory or use NODE_PATH env. variable to set TypeScript location, if it's located outside of project directory.
##[error]ERROR: Missing TypeScript dependency
该分析适用于 javascript 文件,但不适用于打字稿文件。我在我的 package.json 中安装了 typescript 包作为开发依赖项,但它似乎被 SonarCloud 忽略了。
我找到的文档和主题与 SonarQube 版本相关,但我不知道如何使用 SonarCloud 进行设置。
默认情况下,如果您使用 Visual Studio,本地项目文件夹中的 node_modules
文件夹将不会添加到源代码管理中。
并且由于 Run Code Analysis
任务无法找到您的 package.json
文件中定义的依赖包,所以会发生此错误。我的可重现步骤:
然后我在 Prepare Analysis task
之前添加一个 npm install
任务来安装缺少的包:
NodeJS 是我的项目名称。同样在 Devops 存储库中,这是存在 package.json 的文件夹的名称。
然后这个问题在我的管道中消失了:
希望对您的问题也有帮助:)
此外: 如果需要,您还可以选择将本地 node_modules
文件夹添加到源代码管理中。但这在 Azure Devops 服务中不推荐。
我有一个包含 Javascript 和 Typescript 文件的项目。我正在使用 SonarCloud 从 Azure DevOps 管道分析这个项目。
我在我的构建管道中这样设置任务准备分析配置:
- task: SonarCloudPrepare@1
inputs:
SonarCloud: 'Sonarcloud'
organization: 'MyOrg'
scannerMode: 'CLI'
configMode: 'manual'
cliProjectKey: 'My key'
cliProjectName: 'My name'
cliSources: '.'
当 运行 管道时,我的管道在 Sonar Cloud Analyze 步骤
中出现以下错误INFO: Found 1 tsconfig.json file(s): [/home/vsts/work/1/s/tsconfig.json]
##[error]ERROR: Cannot find module 'typescript'
##[error]ERROR: TypeScript dependency was not found and it is required for analysis.
ERROR: Install TypeScript in the project directory or use NODE_PATH env. variable to set TypeScript location, if it's located outside of project directory.
ERROR: TypeScript dependency was not found and it is required for analysis.
ERROR: Install TypeScript in the project directory or use NODE_PATH env. variable to set TypeScript location, if it's located outside of project directory.
##[error]ERROR: Missing TypeScript dependency
该分析适用于 javascript 文件,但不适用于打字稿文件。我在我的 package.json 中安装了 typescript 包作为开发依赖项,但它似乎被 SonarCloud 忽略了。
我找到的文档和主题与 SonarQube 版本相关,但我不知道如何使用 SonarCloud 进行设置。
默认情况下,如果您使用 Visual Studio,本地项目文件夹中的 node_modules
文件夹将不会添加到源代码管理中。
并且由于 Run Code Analysis
任务无法找到您的 package.json
文件中定义的依赖包,所以会发生此错误。我的可重现步骤:
然后我在 Prepare Analysis task
之前添加一个 npm install
任务来安装缺少的包:
NodeJS 是我的项目名称。同样在 Devops 存储库中,这是存在 package.json 的文件夹的名称。
然后这个问题在我的管道中消失了:
希望对您的问题也有帮助:)
此外: 如果需要,您还可以选择将本地 node_modules
文件夹添加到源代码管理中。但这在 Azure Devops 服务中不推荐。