我正在尝试使用postgis设置hibernate-spatial项目。在hibernate-spatial 4.0-M1教程之后,我首先遇到了无法找到依赖关系postgis-jdbc-1.5.3.jar的问题。就像有人在这里建议我使用版本1.5.2并且教程编译。
但是如果我尝试运行它会出错。我将hibernate的调试级别设置为debug并且偶然发现了以下问题:
DEBUG SQL -
create table Event (
id int8 not null,
date timestamp,
location GEOMETRY,
title varchar(255),
primary key (id)
)
Hibernate:
create table Event (
id int8 not null,
date timestamp,
location GEOMETRY,
title varchar(255),
primary key (id)
)
ERROR SchemaExport - HHH000389: Unsuccessful: create table Event (id int8 not null, date timestamp, location GEOMETRY, title varchar(255), primary key (id))
ERROR SchemaExport - FEHLER: Typ ╗geometry½ existiert nicht Position: 94
错误是德语,但意味着'几何'类型不存在。
如果我使用create table语句并在pgadmin中执行它,那么它可以找到,所以我认为数据库设置正确。
我的版本:
postgres - 9.0 64Bit
postgis - 2.0.1 64Bit
hibernate-spatial - 4.0-M1
hibernate - 4.0.0-Final
postgis-jdbc - 1.5.2
寻求帮助
JayBee
答案 0 :(得分:0)
您的Postgresql不支持几何体。您需要为其添加postgis
扩展名才能创建空间数据库。所以从here为postgresql下载合适的postgis扩展。然后将其安装在postgresql安装文件夹中,例如(在我的系统中)在以下路径中:
C:\Program Files (x86)\OpenGeo\OpenGeo Suite\pgsql\9.1