2012-07-02 91 views
4

我安裝冬眠空間,以下是從官方網站的文檔中的步驟:休眠空間未解決的依賴PostGIS的-JDBC; 1.5.3:找不到

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 

任何人都知道我是怎麼可以解決這種依賴

非常感謝您的關注

回答

9

似乎maven中央倉庫中postgis-jdbc的最新版本是1.3.3。 不幸的是,在hibernate-spatial教程中聲明的三個附加存儲庫都沒有包含postgis-jdbc的版本1.5.3(最高版本是1.5.2,可在回購http://www.hibernatespatial.org/repository/中找到)。

版本1.5.3未列出PostGIS的下載頁面上,但是你仍然可以在這裏下載:http://postgis.refractions.net/download/postgis-1.5.3.tar.gz

務實的方法是建立自己的圖書館(在PostGIS的-1.5.3/JAVA描述/ jdbc/README)並手動將其添加到本地Maven存儲庫(請參閱Maven的文檔 - 我想提供URL,但由於我目前的聲譽,我不能在每個答案中發佈兩個以上的URL)。

0

您也可以告訴您的構建系統忽略傳遞依賴關係,然後明確聲明您需要的版本。不知道哪個構建系統電梯使用,但這裏是我如何與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做同樣的事情。