首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到Apache SIS数据库'classpath:SIS_DATA/Databases/SpatialMetadata‘

找不到Apache SIS数据库'classpath:SIS_DATA/Databases/SpatialMetadata‘
EN

Stack Overflow用户
提问于 2020-12-11 16:10:19
回答 1查看 56关注 0票数 0

当我尝试在JUnit测试函数中初始化org.apache.jena.geosparql.implementation.SRSInfo对象时,我得到了一个java.lang.ExceptionInInitializerError,堆栈跟踪是:

代码语言:javascript
复制
Caused by: java.lang.ArrayStoreException: org.geotools.referencing.factory.epsg.FactoryUsingWKT
    at org.apache.sis.internal.referencing.LazySet.cache(LazySet.java:219)
    at org.apache.sis.internal.referencing.LazySet.get(LazySet.java:256)
    at org.apache.sis.internal.referencing.LazySet$1.next(LazySet.java:282)
    at org.apache.sis.referencing.factory.MultiAuthoritiesFactory.getAuthorityFactory(MultiAuthoritiesFactory.java:687)
    at org.apache.sis.referencing.factory.MultiAuthoritiesFactory.create(MultiAuthoritiesFactory.java:861)
    at org.apache.sis.referencing.factory.MultiAuthoritiesFactory.createCoordinateReferenceSystem(MultiAuthoritiesFactory.java:922)
    at org.apache.sis.referencing.CRS.forCode(CRS.java:234)
    at org.apache.jena.geosparql.implementation.SRSInfo.getDefaultWktCRS84(SRSInfo.java:242)
    at org.apache.jena.geosparql.implementation.SRSInfo.<clinit>(SRSInfo.java:51)
    ... 26 more

我直接测试了CRS.forCode函数,但得到了相同的错误。

derby.log文件显示有一个异常

代码语言:javascript
复制
java.sql.SQLException: Database 'classpath:SIS_DATA/Databases/SpatialMetadata' not found.

Caused by: ERROR XJ004: Database 'classpath:SIS_DATA/Databases/SpatialMetadata' not found.
    at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
    at org.apache.derby.impl.jdbc.SQLExceptionFactory.wrapArgsForTransportAcrossDRDA(Unknown Source)
    ... 18 more

我已经添加了maven依赖项sis-embedded-data

代码语言:javascript
复制
 <dependency>
      <groupId>org.apache.sis.non-free</groupId>
      <artifactId>sis-embedded-data</artifactId>
      <version>1.0</version>
      <scope>runtime</scope>
 </dependency>

我还尝试添加sis-epsg依赖项并设置SIS_DATA环境变量,但得到了类似的错误。

代码语言:javascript
复制
<dependency>
    <groupId>org.apache.sis.non-free</groupId>
    <artifactId>sis-epsg</artifactId>
    <version>1.0</version>
    <scope>runtime</scope>
</dependency>

有什么办法来解决这个问题吗?

EN

回答 1

Stack Overflow用户

发布于 2020-12-17 11:38:10

此问题可能是由于Apache SIS和Geotools库之间的冲突造成的。我已经创建了一个干净的环境来测试这个问题,并且它没有例外地工作。因此,我排除了geotools库,并得到了正确的答案!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65247792

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档