node_modules
是yarn(或npm)存储依赖项的位置。
我正在使用TFS任务在具有此标准配置的angular 7项目上执行SonarQube分析:
“发布质量门结果”任务失败,出现以下错误:
2019-02-06T16:15:40.1474327Z ##[debug]findPath: 'C:\Agt2\_work\14'
2019-02-06T16:15:40.1474945Z ##[debug]findOptions.followSpecifiedSymbolicLink: 'true'
2019-02-06T16:15:40.1475394Z ##[debug]findOptions.followSymbolicLinks: 'true'
2019-02-06T16:15:40.1480701Z ##[debug] C:\Agt2\_work\14 (directory)
[...]
2019-02-06T16:15:41.2684833Z ##[debug] C:\Agt2\_work\14\s\node_modules\@angular\cli (directory)
2019-02-06T16:15:41.2692225Z ##[debug] C:\Agt2\_work\14\s\node_modules\@angular\cli\.bin (directory)
2019-02-06T16:15:41.2779828Z ##[debug][SQ] Publish task error: Failed find: ENOENT: no such file or directory, stat 'C:\Agt2\_work\14\s\node_modules\@angular\cli\.bin\ng'
2019-02-06T16:15:41.2781059Z ##[debug]task result: Failed
2019-02-06T16:15:41.2782877Z ##[error]Failed find: ENOENT: no such file or directory, stat 'C:\Agt2\_work\14\s\node_modules\@angular\cli\.bin\ng'
第一个问题:为什么Sonar在我将其添加到“准备分析”任务中的排除文件中时分析了node_modules:
sonar.exclusions=**/node_modules/**,**/*.spec.ts
第二个问题:如果我将这些选项添加到“准备分析”任务中的其他属性中,则似乎忽略了该选项:
findOptions.followSpecifiedSymbolicLink='false'
findOptions.followSymbolicLinks:'false'
以及如何解决此问题以获得单元测试结果并将其发布到sonarqube?
编辑:在Sonar JIRA上创建的票证: https://community.sonarsource.com/t/vsts-publish-quality-gate-result-with-npm-parses-node-modules-folder-and-hangs-on-symbolic-links/7058
编辑2 :声纳团队回答我,它与此错误类似: https://jira.sonarsource.com/browse/VSTS-172