问题所在
我目前正在使用Java 9及其模块系统,并希望通过JDBC连接到我的PostgreSQL数据库。
问题是,我找不到任何关于Java 9和它的模块系统的设置的信息,但只针对Java 8和更高版本。
问题是
如何使用java模块系统正确设置JDBC及其驱动程序?
发布于 2019-11-06 12:43:27
jar必须在运行时位于类路径上。对于编译,您不需要jar。
如果Postgresql驱动程序已经模块化,它将与运行时的uses/provides机制一起工作:
java JRE:
module java.sql {
uses java.sql.Driver;
exports java.sql;
}然后驱动程序应该在模块-info中有类似的内容:
module org.postgresql {
requires java.sql;
provides java.sql.Driver with org.postgresql.Driver;
}正常的ServiceLoader会自动发现驱动程序。
通常不需要Class.forName("org.postgresql.Driver");,只是在某些JavaEE应用程序中需要类加载器。
https://stackoverflow.com/questions/58729980
复制相似问题