我的目标是最终为Windows,OSX和Linux发行版开发一个安装程序,它将在客户的计算机上注册一个自定义JDBC驱动程序,以便他们在使用自己喜欢的SQL工具时可以使用它。
我知道有些工具为您提供了手动添加jar的方法,但我想知道是否有在每个操作系统中注册JDBC驱动程序的官方方法。
答案 0 :(得分:2)
您没有在操作系统中注册JDBC驱动程序,您需要将其放在需要使用驱动程序的应用程序的类路径上。
大多数非平凡的Java应用程序都会忽略CLASSPATH
环境变量。
在Java 9之前,您可以尝试将驱动程序放在Java安装的lib/ext
文件夹中。但这是一个非常糟糕的主意(例如,与特定应用程序需求的冲突依赖性等),并且已在Java 8中弃用并在Java 9中删除。
应用程序如何配置其类路径在很大程度上取决于应用程序:有些只使用一组特定的jar文件,而您无法添加其他文件,其他应用程序将扫描其应用程序中的文件夹以查找jar文件(因此删除了将jar文件放入该文件夹就足够了,或者需要更改配置或启动器文件以将特定的jar文件添加到其类路径中。
这意味着没有通用的方法。
如果您正在讨论JDBC的自动驱动程序加载机制,请查看java.sql.DriverManager
的文档,特别是META-INF/services/java.sql.Driver
文件。这仍然需要将驱动程序的jar文件正确添加到应用程序的类路径中。