升级到5.1.39时找不到mysql-connector-java驱动程序

时间:2017-06-17 15:13:38

标签: java mysql spring maven datanucleus

使用DataNucleus作为持久性管理器的我的Spring Boot应用程序可以在我的maven pom.xml中使用这个mySQL版本正常工作:

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.39</version>
</dependency>

documentation中按升级过程使用新名称定义连接:

 properties.setProperty("javax.jdo.option.ConnectionDriverName", "com.mysql.cj.jdbc.Driver");

我正在尝试升级到最新的mySQL连接器6.0.6 - 但即使我升级到我正在使用的任何版本(例如5.1.42)

这是新的maven条目:

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>6.0.6</version>
</dependency>

当我切换到这个和新的驱动程序名称

我得到一个非常明确的错误

The specified datastore driver ("com.mysql.cj.jdbc.Driver") was not found in the CLASSPATH. Please check your CLASSPATH specification, and the name of the driver.

我的其余连接信息定义为

 Properties properties = new Properties();
            properties.setProperty("javax.jdo.PersistenceManagerFactoryClass", "org.datanucleus.api.jdo.JDOPersistenceManagerFactory");
            properties.setProperty("javax.jdo.option.ConnectionURL", url);
            properties.setProperty("javax.jdo.option.ConnectionDriverName", "com.mysql.cj.jdbc.Driver");
            properties.setProperty("javax.jdo.option.ConnectionUserName", login);
            properties.setProperty("javax.jdo.option.ConnectionPassword", password);
            properties.setProperty("org.jpox.identifier.case", "PreserveCase");
            properties.setProperty("datanucleus.schema.autoCreateAll", "true");
            properties.setProperty("datanucleus.query.sql.allowAll", "true");
            properties.setProperty("datanucleus.schema.autoCreateTables", "true");

有什么建议吗?

2 个答案:

答案 0 :(得分:1)

使用6.* version更新mysql依赖项: -

<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>6.0.5</version>
</dependency>

答案 1 :(得分:0)

这在我的机器上变成了时髦的东西 - 删除我的.m2仓库并强制用mvn clean install -U进行更新将其清除。