2012-09-10 37 views
8

Tôi vừa tải xuống Sonar 3.2 và đã định cấu hình các tệp sonar.properties để kết nối với cơ sở dữ liệu MySql cục bộ của mình. Tôi đã thiết lập sau chưa được bật:Cài đặt Sonar MySQL

sonar.jdbc.url: jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true 
sonar.jdbc.driverClassName: com.mysql.jdbc.Driver 

tôi có thể bắt đầu các máy chủ mà không có bất kỳ lỗi và tôi có thể đăng nhập vào giao diện Sonar tuy nhiên khi tôi chạy 'sonar mvn: sonar' về dự án maven của tôi tôi nhận được lỗi sau:

[ERROR] Failed to execute goal org.codehaus.mojo:sonar-maven-plugin:2.0:sonar (default-cli) on project vrservices: Can not execute Sonar: Fail to connect to database: Cannot load JDBC driver class 'org.h2.Driver' -> [Help 1] 

tôi đã đọc một vài diễn đàn mà nói để đưa đoạn mã sau vào file settings.xml tuy nhiên điều này vẫn không khắc phục được vấn đề này.

<profile> 
     <id>sonar</id> 
     <activation> 
      <activeByDefault>true</activeByDefault> 
     </activation> 
     <properties> 
      <!-- EXAMPLE FOR MYSQL --> 
      <sonar.jdbc.url>jdbc:mysql://localhost:3306/sonar?useUnicode=true&amp;characterEncoding=utf8</sonar.jdbc.url> 
      <sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver> 
      <sonar.jdbc.username>root</sonar.jdbc.username> 
      <sonar.jdbc.password></sonar.jdbc.password> 
     </properties> 
    </profile> 

Tôi đã tự hỏi liệu có ai cũng gặp vấn đề này không và nếu bạn khắc phục sự cố này thì sao?

Cảm ơn trước!

+0

Dường như Sonar tìm kiếm cơ sở dữ liệu h2. Bạn có chắc là bạn đã đặt chính xác tất cả các thuộc tính như được mô tả ở đây không? http://docs.codehaus.org/display/SONAR/Installing+Sonar – ppapapetrou

Trả lời

7

Nếu bạn không định cấu hình plugin Sonar Maven, nó sẽ cố kết nối với vị trí mặc định cho cơ sở dữ liệu nhúng đi kèm với Sonar. Bắt đầu với phiên bản 3.2, cơ sở dữ liệu nhúng mặc định là H2 (thay thế derby).

Đề xuất diễn đàn là chính xác, tôi nghi ngờ rằng trường hợp Maven của bạn không tải tệp cài đặt chính xác. Hãy thử chạy Maven như sau:

mvn -s /path/to/settings/file/setting.xml sonar:sonar 
+0

Xin chào Mark, Cảm ơn bạn đã trả lời. Tôi chạy lệnh bạn đã nêu trong bình luận của bạn và tiếc là tôi đã nhận được cùng một tin nhắn. – Harvey

1

Có thể bạn đã vô tình dán phần "tiểu sử" vào địa điểm sai trong tệp settings.xml của mình? Hãy chắc chắn có nó giữa các thẻ <profiles></profiles>. (Một đồng nghiệp của tôi chỉ vấp ngã về một vấn đề tương tự)

6

xem thuộc tính 'sonar.jdbc.url' trong tệp settings.xml và sonar.properties giống nhau. thứ hai tạo một lược đồ theo tên 'sonar' trước khi bạn cố gắng chạy máy chủ sonar. chúc may mắn

0

Dựa trên câu trả lời @Mark O'Connor: kiểm tra xem tệp settings.xml có nằm đúng đường dẫn (/home/YOURUSER/.m2/ hoặc biến môi trường MAVEN_HOME) và bạn chạy nó từ đúng người dùng - khi tôi chạy Sonar Maven Runner dưới dạng root nó không thể tập tin settings.xml, bởi vì tôi đã có nó trong thư mục nhà của người dùng của tôi.

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