Geotools依赖版本混合

时间:2018-10-19 14:00:25

标签: geotools geomesa

我正在使用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快照 谢谢

1 个答案:

答案 0 :(得分:2)

GeoMesa 2.0.2与geotools 20不兼容。Geotools 20引入了新版本的JTS,该版本将所有软件包从com.vividsolutions.jts重命名为org.locationtech.jts。目前,您应该使用geotools19。GeoMesa当前正计划将geotools 20更新为版本2.2.0,该版本应在未来几个月内发布。