【发布时间】:2020-04-04 00:15:40
【问题描述】:
过去 3 个小时我一直在尝试让我的 Java 程序与我的 Postgres 服务器交互。我无法通过错误消息“找不到适合 jdbc:postgresql://localhost:5432/gis 的驱动程序”。这是一个 Bukkit 插件,我正在使用 IntelliJ IDEA。
代码:
try
{
//Class.forName("org.postgresql.Driver");
c = DriverManager.getConnection("jdbc:postgresql://localhost:5432/gis");
}
catch(Exception e)
{
getLogger().info(e.getMessage());
}
我尝试过的事情:
java -cp ./path/to/postgresjdbc.jar -jar spigot-1.15.2.jar将 jdbc 文件内部直接添加到我的 jar 文件中
将 jdbc 文件添加为 IntelliJ 项目中的依赖项
切换到 maven,并将以下内容放入 pom.xml:
<dependencies>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.2.1</version>
</dependency>
</dependencies>
我无法克服我发布的错误。在这一点上,它已经占据了我整个晚上。
【问题讨论】:
-
我猜这可能与 spigot 如何处理插件类路径有关。尝试使用 main 方法创建一个类并从那里运行代码以查看它是否有效。你检查过这个文件吗? bukkit.gamepedia.com/Using_External_Libraries_with_Plugins 。您拥有的罐子实际上是否包含
org.postgresql.Driver类?该问题也可能是由您正在使用的 jar 中的数字签名引起的:stackoverflow.com/a/45169655/104891。
标签: java postgresql intellij-idea