4

我正在安装休眠空间,以下是官方网站文档中的步骤:

http://www.hibernatespatial.org/tutorial-hs4.html

问题在于图书馆的依赖

为什么找不到图书馆:

postgis-jdbc:jar:1.5.3:编译

在官方网站上查找该库的版本:

http://postgis.refractions.net/download/

但不可用

终端显示的信息如下:

[warn]    http://scala-tools.org/repo-releases/org/postgis/postgis-jdbc/1.5.3/postgis-jdbc-1.5.3.jar
[warn]          ::::::::::::::::::::::::::::::::::::::::::::::
[warn]          ::          UNRESOLVED DEPENDENCIES         ::
[warn]          ::::::::::::::::::::::::::::::::::::::::::::::
[warn]          :: org.postgis#postgis-jdbc;1.5.3: not found
[warn]          ::::::::::::::::::::::::::::::::::::::::::::::
[info] 
[info] :: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS

任何人都知道我可以如何解决这种依赖关系

非常感谢您的关注

4

2 回答 2

9

看来maven中央存储库中postgis-jdbc的最新可用版本是1.3.3。不幸的是,在 hibernate-spatial 教程中声明的三个附加存储库中没有一个包含 postgis-jdbc 的 1.5.3 版本(最高版本是 1.5.2,可在 repo http://www.hibernatespatial.org/repository/中找到)。

postgis 下载页面上没有列出 1.5.3 版本,但是您仍然可以在此处下载:http: //postgis.refractions.net/download/postgis-1.5.3.tar.gz

一种实用的方法是自己构建库(在 postgis-1.5.3/java/jdbc/README 中描述)并将其手动添加到本地 maven 存储库(请参阅 Maven 的文档 - 我想提供 URL 但由于就我目前的 SO 声誉而言,每个答案我不能发布两个以上的 URL)。

于 2012-07-07T19:50:27.873 回答
0

您还可以告诉您的构建系统忽略传递依赖,然后显式声明您需要的版本。不确定使用哪个构建系统提升,但这是我在 Play Framework 中使用 SBT 的方法:

libraryDependencies ++= Seq(
  [...]
  "org.postgis" % "postgis-jdbc" % "1.5.2",
  "org.hibernate" % "hibernate-spatial" % "4.0-M1" exclude("org.postgis", "postgis-jdbc")  
)

您还必须添加休眠空间存储库才能访问版本1.5.2

resolvers += (
    "Hibernate Spatial Repository" at "http://www.hibernatespatial.org/repository" 
)

我通过本教程学习了这一点,该教程展示了如何使用 Maven 做同样的事情。

于 2014-01-03T11:20:24.180 回答