首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Sonar Runner : Windows 7:启动时抛出jdbc错误

Sonar Runner : Windows 7:启动时抛出jdbc错误
EN

Stack Overflow用户
提问于 2014-01-09 03:31:36
回答 2查看 2.4K关注 0票数 3

我会慢慢发疯的。

我使用的是64位的windows7,使用的是最新的SonarQube和runner2.3。

我让SonarQube在9000端口上运行。

当我尝试运行sonar-runner.bat时,我得到:

代码语言:javascript
复制
C:\myRoot\SonarQube\SonarQubeRunner\sonar-runner-dist-2.3\sonar-runner-2.3
SonarQube Runner 2.3
Java 1.7.0_45 Oracle Corporation (64-bit)
Windows 7 6.1 amd64
INFO: Runner configuration file: C:\myRoot\SonarQube\SonarQubeRunner\sonar-runner-dist-2.3\sonar-runner-2.3\conf\sonar-runner.properties
INFO: Project configuration file: NONE
INFO: Default locale: "en_US", source code encoding: "windows-1252" (analysis is platform dependent)
INFO: Work directory: C:\myRoot\SonarQube\sonar_examples\sonar-examples-master\projects\languages\php\php-sonar-runner\src\.sonar
INFO: SonarQube Server 4.0
14:18:52.103 INFO  - Load batch settings
14:18:52.196 INFO  - User cache: C:\Users\myName\.sonar\cache
14:18:52.212 INFO  - Install plugins
14:18:52.602 INFO  - Install JDBC driver
14:18:52.602 INFO  - Create JDBC datasource for jdbc:mysql://localhost:3306/sonar
INFO: ------------------------------------------------------------------------
INFO: EXECUTION FAILURE
INFO: ------------------------------------------------------------------------
Total time: 1.700s
Final Memory: 4M/74M
INFO: ------------------------------------------------------------------------
ERROR: Error during Sonar runner execution
ERROR: Unable to execute Sonar
ERROR: Caused by: Fail to connect to database
ERROR: Caused by: Cannot load JDBC driver class 'com.mysql.jdbc.Driver'
ERROR: Caused by: com.mysql.jdbc.Driver
ERROR:
ERROR: To see the full stack trace of the errors, re-run SonarQube Runner with the -e switch.
ERROR: Re-run SonarQube Runner using the -X switch to enable full debug logging.

当我收集调试信息时,我会得到:

代码语言:javascript
复制
        yadda, yadda ...
        ... 32 more
Caused by: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at org.apache.commons.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1420)
        ... 37 more

我在以下位置有一个名为mysql-connector-java-5.1.26.jar的文件:

代码语言:javascript
复制
C:\myRoot\SonarQube\sonarqube-4.0\sonarqube-4.0\extensions\jdbc-driver\mysql

我不明白为什么找不到它。

我的.properities文件相当简单。

任何建议都将不胜感激。

感谢您的阅读。

EN

回答 2

Stack Overflow用户

发布于 2014-02-16 23:03:09

我在使用Linux Mint Debian Edition的Jenkins设置中遇到了同样的错误信息。我使用的是SonarQube Runner2.3和SonarQube Server4.1.1

代码语言:javascript
复制
ERROR: Unable to execute SonarERROR: Caused by: Fail to connect to database
ERROR: Caused by: Cannot load JDBC driver class 'com.mysql.jdbc.Driver'
ERROR: Caused by: com.mysql.jdbc.Driver

我阅读Here来重启SonarQube服务器,这为我解决了这个问题。

我知道这是微不足道的,但这就是我的全部,很容易忽略这些小事情。

票数 0
EN

Stack Overflow用户

发布于 2014-04-23 20:54:14

如果你正在尝试你的本地Mysql数据库,那么在你的sonarcube sonar.properties文件中使用这些代码。

代码语言:javascript
复制
# Permissions to create tables, indices and triggers must be granted to JDBC user.
# The schema must be created first.
sonar.jdbc.username=root
sonar.jdbc.password=root

#----- MySQL 5.x
# Comment the embedded database and uncomment the following line to use MySQL
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonardb?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true
sonar.jdbc.driverClassName: com.mysql.jdbc.Driver
sonar.jdbc.validationQuery: select 1

最后,确保您创建的SONAR_RUNNER_HOME具有正确的值和path变量条目,一直到bin目录。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21004852

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档