我遇到了为声纳分析配置多级maven模块的问题。
它的工作正常,具有以下结构:
parent module
|- level 1
|- module with code to analyze
但是,如果我使用要分析的代码向模块添加深度,我将无法对其进行配置。
parent module
|- level 1
|- level 2
|- module with code to analyze
我尝试了几种配置:
Can not execute SonarQube analysis: The project 'level 2' is already defined in SonarQube but not as a module of project 'level 1'. If you really want to stop directly analysing project 'level 2', please first delete it from SonarQube and then relaunch the analysis of project 'level 1'.
错误。我不想在1级上启动,因为我在同一级别进行了集成测试,直接在父模块中。有人知道如何处理它吗? (我的意思是不修改层级文件夹,这对其他一些要求非常有帮助)
先谢谢
答案 0 :(得分:1)
我找到了一个解决方法: - 我在父项目上启动mvn clean install - 然后我在'2级'模块发射声纳:声纳,我可以这样做,因为要分析的所有代码源都在同一个模块下。
至少它正在研究my sample project,但目前我还没有处理它让我的真实项目工作。
答案 1 :(得分:1)
构建我的Maven多模块项目一直在为我工作。我正在使用SonarQube v4.3。
我在父Maven项目的根级别放置了一个sonar-project.properties文件。
这里的内容是:
# Root project information
sonar.projectKey=<I used the project pom's groupId + artifactId>
sonar.projectName=<can be anything>
sonar.projectVersion=<I used the project pom's version>
# Some properties that will be inherited by the modules
sonar.sources=src
在我父项目的pom中,我声明了这个属性:
<sonar.language>java</sonar.language>
在同一个pom中,我声明了以下内容:
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>2.2</version>
</plugin>
</plugins>
</pluginManagement>
</build>
我只构建父项目,这导致父项及其所有子项被SonarQube分析。我正在使用:
mvn clean install sonar:sonar
或
mvn sonar:sonar
答案 2 :(得分:0)
我认为你在SonarQube中有一个模块作为项目。首先,您需要将其删除,然后执行新的分析。
当项目已经存在但处于不同级别(项目,模块等)时会发生这种情况
答案 3 :(得分:0)
此行为与此JIRA相关:http://jira.codehaus.org/browse/SONAR-4245
唯一的解决方案是使用旧版的Sonar ..