首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用MariaDB连接器/J?

如何使用MariaDB连接器/J?
EN

Stack Overflow用户
提问于 2022-03-05 10:50:24
回答 1查看 456关注 0票数 0

我试图连接到Java中的一个数据库。我的数据库是MariaDB,所以我更喜欢使用MariaDB连接器。我正在使用Gradle来生成一个jar,然后运行在一个SpigtMin克拉夫特服务器中。

当连接到DB时,我使用con = DriverManager.getConnection(jdbcURL); where jdbcURL == "jdbc:mariadb://playerdata:1234@127.0.0.1:3306/playerdata"

我得到了错误java.sql.SQLException: No suitable driver found for jdbc:mariadb://playerdata:1234@127.0.0.1:3306/playerdata

在JDBC中将mariadb替换为mysql时,它将按预期的方式工作。很明显,MariaDB连接器在运行时没有添加到类路径中,所以我检查了jar,它只包含我自己的编译源代码。为了解决这个问题,我尝试用gradle插件“影子”创建一个“胖”罐子。虽然现在看来连接器的编译后的java被添加到jar中,而且Class.forName("org.mariadb.jdbc.Driver");不会抛出异常,但在尝试连接到JDBC时,我仍然会得到以jdbc:mariadb://开头的相同的SQLException

以下是我的build.gradle片段

代码语言:javascript
运行
复制
plugins {
    id 'java'
    id "com.github.johnrengelman.shadow" version "7.1.2"
}
...
dependencies {
...
    runtimeClasspath 'org.mariadb.jdbc:mariadb-java-client:3.0.3'
    shadow 'org.mariadb.jdbc:mariadb-java-client:3.0.3'
}

在运行时,虽然有可能,但我确实不希望更改JVM参数来修改类路径。

EN

回答 1

Stack Overflow用户

发布于 2022-03-05 16:38:59

这太奇怪了。我将JDBC更改为jdbc:mariadb://127.0.0.1:3306/playerdata?user=playerdata&password=1234,它可以工作。将此更改还原回jdbc:mariadb://playerdata:1234@127.0.0.1:3306/playerdata会产生不同的错误java.sql.SQLException: Incorrect port value : 1234@127.0.0.1。我确信我没有改变什么,但我有谁可以抱怨呢?

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

https://stackoverflow.com/questions/71361531

复制
相关文章

相似问题

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