hibernate-spatial unresolved dependencies postgis-jdbc; 1.5.3:not found

时间:2012-07-02 22:45:41

标签: hibernate scala lift

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

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

问题在于图书馆的依赖性

为什么找不到图书馆:

postgis-jdbc:jar:1.5.3:compile

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

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

任何人都知道我如何解决这种依赖性

非常感谢您的关注

2 个答案:

答案 0 :(得分:9)

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

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

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

答案 1 :(得分: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")  
)

您还必须添加hibernate空间回购以访问版本1.5.2

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

我使用this tutorial了解了这一点,它展示了如何使用Maven做同样的事情。