2013-09-02 2 views
0

현재 옵션 데이터베이스로 hsqldb 2.3을 사용하는 스윙 프로젝트에서 작업 중입니다 ... 이 프로젝트에는지도가 있으며 geotools는 hsqldb도 사용하지만 hsqldb 1.8을 사용합니다. 나는 모두 함께 노력 넣어하려하지만 난이 예외를 얻을 :geotools 10 RC1 + hsqldb 2.3

는 "가에 의한 : java.lang.ClassNotFoundException가 : org.hsqldb.jdbc.jdbcDataSource"

내가 소스 코드를 확인하고, 나는 "JDBC"단어는 대문자로 2.3에 있기 때문에 일어나는 이유는 믿습니다 "org.hsqldb.jdbc.JDBCDataSource"내가 여기에서 무엇을 해야할지 모르겠어요

합니다. 두 항아리를 모두 추가하면 클래스 충돌 오류가 발생합니다. 제안 사항을 환영합니다 ....

답변

0

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

참고 중복 될 수 있으며, 제거 할 수 있습니다 소스 코드에서 ALIAS를 만들 일부 사용이 있습니다.

SQL에 대한 동일한 소스 트리의 resources 디렉토리를 참조하십시오.

+0

답을 고맙게 생각하지만 몇 가지 복잡한 해결책이 있습니다. 임베디드 데이터베이스로 H2를 사용하기로 결정했습니다. 잘 작동하고 프레임 워크 내에서 아무것도 변경할 필요가 없습니다. 플러스 나는 그것이 제공하는 단순성으로 정말 강력한 도구 인 H2를 알게되었습니다. – Shoyo