【发布时间】:2015-12-11 00:16:41
【问题描述】:
- Eclipse:“Luna”版本 2 (4.4.2) [20150219-0600]
- 声纳:5.1(在 Java 1.7.0_76 下)
- Sonar Eclipse 插件:3.5.0.20150804-1512-RELEASE
我们有一个包含许多项目的大型企业系统,出于各种不可协商的原因,我们在本地工作区目录中创建 Eclipse 项目,但使用 Eclipse 链接指向另一个目录中的源代码。
例如,假设我的 Foo 项目基于“C:/EclipseWorkspace/Foo”,并且在顶层有一个“src”链接,如下所示:
C:/EclipseWorkspace/Foo/src -> C:/CodeRepository/Foo/src
我想对插件进行以下非常简单的设置:
sonar.sources = C:/CodeRepository/Foo/src
问题是,Sonar Eclipse 插件似乎不支持使用绝对路径。当我运行分析时,我在控制台上收到以下错误:
Retrieve remote issues of project Foo...
Start SonarQube analysis on Foo...
INFO: SonarQube Server 5.1
17:16:18.565 INFO - Incremental mode
17:16:18.609 INFO - Load global repositories
17:16:18.862 INFO - Load global repositories (done) | time=253ms
17:16:18.863 INFO - Server id: 20150910100331
17:16:18.865 INFO - User cache: C:\Users\eryq\.sonar\cache
17:16:18.870 INFO - Install plugins
17:16:18.894 INFO - Include plugins:
17:16:18.894 INFO - Exclude plugins: devcockpit, buildstability, pdfreport, report, buildbreaker, views, jira
17:16:19.375 ERROR - Invalid value of sonar.sources for Foo
Exception in thread "main" org.sonar.runner.impl.RunnerException: Unable to execute Sonar
...
Caused by: java.lang.IllegalStateException: The folder 'C:/CodeRepository/Foo/src' does not exist for 'Foo' (base directory = C:\EclipseWorkspace\Foo)
at org.sonar.batch.scan.ProjectReactorBuilder.checkExistenceOfPaths(ProjectReactorBuilder.java:427)
at ...
注意最后一行:
'Foo' 的文件夹 'C:/CodeRepository/Foo/src' 不存在(base 目录 = C:\EclipseWorkspace\Foo)
由于 Eclipse 插件不允许我覆盖 projectBaseDir,我如何理解 sonar.sources 实际上位于该树之外的另一个目录中?这似乎是一个插件错误:如果我需要指向 sources 目录列表,插件应该让我在需要时指定绝对路径。
提前致谢,
艾瑞克
【问题讨论】:
标签: eclipse plugins sonarqube analysis