2015-01-16 17 views
20

Tôi tự hỏi trình cắm thêm sonar-maven nào trong phiên bản nào tôi nên sử dụng. Theo như tôi biết có phiên bản org.codehaus.mojo và hai phiên bản org.codehaus.sonar (sonar-maven3-plugin, sonar-maven-plugin).Phiên bản plugin sonar-maven nào để sử dụng?

Theo như tôi hiểu plugin sonar-maven3 hiện không được dùng nữa và thay vào đó, org.codehaus.sonar: sonar-maven-plugin nên được sử dụng. Tuy nhiên, phiên bản org.codehaus.sonar này được gắn với một phiên bản nhất định của máy chủ sonar, do đó nó có thể không có ý nghĩa để sử dụng chúng trực tiếp. Để có thể giải quyết vấn đề này, có org.codehaus. mojo: sonar-maven-plugin để kiểm tra phiên bản sonar mà máy chủ có và từ đó kiểm tra xem org.codehaus nào. sonar: sonar-maven-plugin để sử dụng.

Vì vậy, để có một pom maven độc lập với phiên bản Sonar Server nên có thể sử dụng phiên bản org.sonar.mojo:sonar-maven-plugin:RELEASE để an toàn.

Tôi có nhận được quyền này không?

Mọi thứ cần xem xét thêm?

Cảm ơn

Trả lời

13

Như đã trình bày trong ("Dự án đã phân tích với Maven 3" nhìn thấy) documentation page, plugin bạn phải sử dụng là org.codehaus.mojo:sonar-maven-plugin, không phải là nội một (s).

+0

Và, làm thế nào để chúng ta tương quan số phiên bản giữa org.codehaus.sonar và org.codehaus.mojo sonar-maven-plugins? –

+0

Giả sử rằng "org.codehaus.mojo: sonar-maven-plugin" được sử dụng làm plugin mặt tiền cho các plugin nội bộ để không có phụ thuộc vào API SonarQube. Nó phát hiện phiên bản nào của các plugin nội bộ để sử dụng nhờ một cuộc gọi WS tới máy chủ để biết phiên bản nào của SonarQube được cài đặt. Tôi nói "trước đây là một mặt tiền" vì trong phiên bản SQ 5.2 sắp tới, các plugin nội bộ sẽ không còn được yêu cầu và do đó bị loại bỏ khỏi cơ sở mã. –

+3

Làm thế nào về 'org.codehaus.sonar: sonar-maven-plugin'? Đó có phải là một plugin chỉ dành cho Maven2 không? – JavaJigs

2

Khi chúng tôi sử dụng sonarserver ver 3.7.1, chúng tôi đã từng có org.codehaus.sonar: sonar-maven-plugin. Khi chúng ta di chuyển từ máy chủ Sonar sang máy chủ SonarQube 4.5 trở đi, chúng ta cần sử dụng org.codehaus.mojo: sonar-maven-plugin. Hiện tại trong dự án của chúng tôi, chúng tôi cần biên dịch mã của chúng tôi với jdk 6 (vì nó là dự án cũ) và chạy máy chủ sonarqube ver 4.5.7 phân tích với java 7 vì vậy với java 6 chúng tôi chạy lệnh mvn clean org.jacoco:jacoco-maven-plugin:0.7.4.201502262128:prepare-agent install và trong khi chạy sonar phân tích, chúng tôi thay đổi jvm thành java 7 và thực hiện lệnh mvn org.codehaus.mojo:sonar-maven-plugin:2.4:sonar -Dsonar -Dsonar.host.url=http://localhost:9000 -Dsonar.dynamicAnalysis=true

Các vấn đề liên quan