我正在使用Geotools编写Java程序以在Geomesa 2.0.2中提取数据,但是在尝试运行时遇到此错误。问题是这个
SimpleFeatureType simpleFeatureType=dataStore.getSchema("schemaname");
[WARNING]
java.lang.NoSuchMethodError: tec.uom.se.format.SimpleUnitFormat.getInstance()Lte c/uom/se/format/SimpleUnitFormat$FinalDefaultFormat;
at si.uom.NonSI.addUnit (NonSI.java:642)
at si.uom.NonSI.addUnit (NonSI.java:665)
at si.uom.NonSI.<clinit> (NonSI.java:109)
at org.geotools.referencing.datum.DefaultPrimeMeridian.<clinit> (DefaultPrim eMeridian.java:47)
at org.geotools.referencing.datum.DefaultGeodeticDatum.<clinit> (DefaultGeod eticDatum.java:73)
at org.geotools.referencing.crs.DefaultGeographicCRS.<clinit> (DefaultGeogra phicCRS.java:89)
at org.locationtech.geomesa.utils.geotools.package$.liftedTree1$1 (package.s cala:27)
at org.locationtech.geomesa.utils.geotools.package$.<init> (package.scala:27 )
at org.locationtech.geomesa.utils.geotools.package$.<clinit> (package.scala)
at org.locationtech.geomesa.utils.geotools.AttributeSpec$GeomAttributeSpec.b uilderHook (SimpleFeatureSpec.scala:165)
at org.locationtech.geomesa.utils.geotools.AttributeSpec$class.toDescriptor (SimpleFeatureSpec.scala:76)
at org.locationtech.geomesa.utils.geotools.AttributeSpec$GeomAttributeSpec.t oDescriptor (SimpleFeatureSpec.scala:156)
at org.locationtech.geomesa.utils.geotools.SimpleFeatureTypes$$anonfun$creat eFeatureType$1.apply (SimpleFeatureTypes.scala:233)
at org.locationtech.geomesa.utils.geotools.SimpleFeatureTypes$$anonfun$creat eFeatureType$1.apply (SimpleFeatureTypes.scala:233)
一开始我有classNotFound
,然后添加了SI单位依赖项
<dependency>
<groupId>javax.measure</groupId>
<artifactId>unit-api</artifactId>
<version>0.9</version>
</dependency>
<!-- https://mvnrepository.com/artifact/tec.uom/uom-se -->
<dependency>
<groupId>tec.uom</groupId>
<artifactId>uom-se</artifactId>
<version>1.0.8</version>
</dependency>
<!-- https://mvnrepository.com/artifact/tec.uom.lib/uom-lib-common -->
<dependency>
<groupId>tec.uom.lib</groupId>
<artifactId>uom-lib-common</artifactId>
<version>1.0.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/si.uom/si-units-java8 -->
<dependency>
<groupId>si.uom</groupId>
<artifactId>si-units-java8</artifactId>
<version>0.9</version>
</dependency>
谁能帮助我找到依赖的确切版本,特别是Units Dependencies,知道我正在使用geomesa 2.0.2和geotools 20快照 谢谢
答案 0 :(得分:2)
GeoMesa 2.0.2与geotools 20不兼容。Geotools 20引入了新版本的JTS,该版本将所有软件包从com.vividsolutions.jts重命名为org.locationtech.jts。目前,您应该使用geotools19。GeoMesa当前正计划将geotools 20更新为版本2.2.0,该版本应在未来几个月内发布。