地理工具 10 RC1 + hsqldb 2.3
Posted
技术标签:
【中文标题】地理工具 10 RC1 + hsqldb 2.3【英文标题】:geotools 10 RC1 + hsqldb 2.3 【发布时间】:2013-09-02 19:39:15 【问题描述】:我目前正在开发一个使用 hsqldb 2.3 作为可选数据库的 Swing 项目... 这个项目有一个地图,geotools 也使用 hsqldb,但是它使用的是 hsqldb 1.8。 我试图让他们一起工作,但我得到了这个例外:
"原因:java.lang.ClassNotFoundException: org.hsqldb.jdbc.jdbcDataSource"
我检查了源代码,我相信它发生的原因是因为在 2.3 上,“jdbc”这个词是大写的: "org.hsqldb.jdbc.JDBCDataSource"
我不知道从这里做什么。如果我添加两个 jar,我会收到一个类冲突错误。 欢迎任何建议....
【问题讨论】:
【参考方案1】:似乎在 hsqldb 1.8 上还有一些其他依赖项。您可以从修改 GeoTools 并更改对新类的引用开始。 GeoTools 脚本中的 SQL 语句通常是兼容的,但某些用法可能需要更新。运行脚本时您会发现是否出现错误。
https://github.com/geotools/geotools/tree/master/modules/plugin/epsg-hsql/src/main/java/org/geotools/referencing/factory/epsg
请注意,在源代码中使用 CREATE ALIAS 可能是多余的,可以删除。
查看同一源代码树中 SQL 的资源目录。
【讨论】:
我很欣赏这个答案,但这会产生一些复杂的解决方案。我决定使用 H2 作为嵌入式数据库。工作正常,我不需要在框架内更改任何内容。另外,我了解了 H2,它是一个非常强大的工具,因为它提供了简单性。以上是关于地理工具 10 RC1 + hsqldb 2.3的主要内容,如果未能解决你的问题,请参考以下文章
通过 SQL 工具运行的 HSQLDB 存储过程抛出扫描仪错误
将 HSQLDB 传输工具与 MySQL 一起使用时出现问题