如何在Maven中添加PostgreSQL驱动程序作为依赖项?

Sot*_*lis 71 java postgresql hibernate maven

我正在尝试用Maven开发Java应用程序,同时使用Hibernate和PostgreSQL数据库进行持久化.我不明白我应该如何将PostgreSQL驱动程序连接到我的应用程序.我得到你在Maven的pom.xml文件中添加依赖项,该文件从远程存储库中找到jar,但是其他jar呢?

mad*_*th3 101

PostgreSQL驱动程序jar包含在Maven的Central Repository中:

对于高达9.1的PostgreSQL,使用:

<dependency>
    <groupId>postgresql</groupId>
    <artifactId>postgresql</artifactId>
    <version>VERSION</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

或9.2+

<dependency>
    <groupId>org.postgresql</groupId>
    <artifactId>postgresql</artifactId>
    <version>VERSION</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

(感谢@Caspar的更正)

  • 请注意,对于9.2及更高版本,jdbc驱动程序的groupid已更改,因此您需要[搜索org.postgresql的groupid而不是postgresql](http://search.maven.org/#search%7Cga%7C1% 7CG%3A%22org.postgresql%22%20于是%20A%3A%22postgresql%22) (9认同)
  • 最新的PostgreSQL JDBC驱动程序支持PostgreSQL Server 7.2+; 所以,不需要第一个(9.2之前的)块.您可以找到[来自PostgreSQL站点的最新JDBC驱动程序](https://jdbc.postgresql.org/download.html),您的JDK 8(JDBC 4.2)驱动程序依赖项是:```<dependency> <groupId> org.postgresql </ groupId> <artifactId> postgresql </ artifactId> <version> 9.4-1206-jdbc42 </ version> </ dependency>``` (6认同)
  • 从2017-05开始,[JDBC驱动程序来自jdbc.postgresql.org](https://jdbc.postgresql.org/download.html)的编号已重新启动,目前为42.1.1. (2认同)

fac*_*ias 25

更新最新版本:

<dependency>
    <groupId>org.postgresql</groupId>
    <artifactId>postgresql</artifactId>
    <version>42.2.5</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

资源

希望能帮助到你!

  • 我不认为这个答案是必要的.如果您认为其"VERSION"不足以获得最新版本,请考虑对已接受的答案进行编辑. (6认同)
  • 如果您不更新版本号,则不会. (3认同)
  • 但版本不再是最新的了哈哈 (3认同)

tft*_*ftd 17

根据您的PostgreSQL版本,您需要将postgresql驱动程序添加到您的pom.xml文件中.

对于PostgreSQL 9.1,这将是:

<project xmlns="http://maven.apache.org/POM/4.0.0"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

    <name>Your project name.</name>
    <dependencies>
        <dependency>
            <groupId>postgresql</groupId>
            <artifactId>postgresql</artifactId>
            <version>9.1-901-1.jdbc4</version>
        </dependency>
    </dependencies>
</project>
Run Code Online (Sandbox Code Playgroud)

您可以从maven的中央存储库获取依赖项(以及任何其他依赖项)的代码

如果您使用的是postgresql 9.2+:

<project xmlns="http://maven.apache.org/POM/4.0.0"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

    <name>Your project name.</name>
    <dependencies>
        <dependency>
            <groupId>org.postgresql</groupId>
            <artifactId>postgresql</artifactId>
            <version>42.2.1</version>
        </dependency>
    </dependencies>
</project>
Run Code Online (Sandbox Code Playgroud)

您可以从以下位置查看最新版本和相关性片段: