2017-03-14 10 views
4

문제점 : 아래 쿼리를 실행하려고하면 오류가 발생합니다. 무언가가 CQL 쿼리에 누락되었거나 jar 파일이 누락 되었습니까? 또한 GeoMesa 오류 또는 누적 오류 일 수도 있습니다. GeoMesa를 쿼리하고 결과를 CSV 파일로 가져 오는 다른 방법이 있습니까?GeoMesa 내보내기 쿼리 오류

네임 스페이스 : MyNamespace에
컬렉션 : d1temp

검색어 :

geomesa export -u user -p password -c myNamespace.d1temp -f d1-json -q "WITHIN(geom, POLYGON((-6.4101 55.597244,-6.4101 50.947156,0.656067 50.947156,0.656067 55.597244,-6.4101 55.597244)))" 

오류 :이 오류는 자바 7에서 발생

id,*geom:Point:srid=4326,short_text_field:String,long_text_field_1:String,long_text_field_2:String,security_tag:String,numerical_tag_1:Integer,numerical_tag_2:Double,timestamp:Date 
Exception in thread "main" java.lang.NoSuchMethodError: java.util.ArrayList.sort(Ljava/util/Comparator;)V 
    at org.locationtech.sfcurve.zorder.ZN.zranges(ZN.scala:212) 
    at org.locationtech.geomesa.curve.Z2SFC$.ranges(Z2SFC.scala:33) 
    at org.locationtech.geomesa.accumulo.index.z2.Z2QueryableIndex$class.getQueryPlan(Z2QueryableIndex.scala:119) 
    at org.locationtech.geomesa.accumulo.index.z2.Z2Index$.getQueryPlan(Z2Index.scala:20) 
    at org.locationtech.geomesa.accumulo.index.z2.Z2Index$.getQueryPlan(Z2Index.scala:20) 
    at org.locationtech.geomesa.accumulo.index.QueryPlanner$$anonfun$getQueryPlans$7$$anonfun$4.apply(QueryPlanner.scala:150) 
    at org.locationtech.geomesa.accumulo.index.QueryPlanner$$anonfun$getQueryPlans$7$$anonfun$4.apply(QueryPlanner.scala:150) 
    at org.locationtech.geomesa.utils.stats.MethodProfiling$class.profile(MethodProfiling.scala:20) 
    at org.locationtech.geomesa.accumulo.index.QueryPlanner.profile(QueryPlanner.scala:56) 
    at org.locationtech.geomesa.accumulo.index.QueryPlanner$$anonfun$getQueryPlans$7.apply(QueryPlanner.scala:150) 
    at org.locationtech.geomesa.accumulo.index.QueryPlanner$$anonfun$getQueryPlans$7.apply(QueryPlanner.scala:144) 
    at scala.collection.Iterator$$anon$12.hasNext(Iterator.scala:396) 
    at org.locationtech.geomesa.accumulo.util.CloseableIterator$$anon$5.hasNext(CloseableIterator.scala:34) 
    at org.locationtech.geomesa.accumulo.util.SelfClosingIterator$$anon$1.hasNext(CloseableIterator.scala:100) 
    at org.locationtech.geomesa.accumulo.util.CloseableIterator$$anon$2.<init>(CloseableIterator.scala:66) 
    at org.locationtech.geomesa.accumulo.util.CloseableIterator$class.ciFlatMap(CloseableIterator.scala:65) 
    at org.locationtech.geomesa.accumulo.util.SelfClosingIterator$$anon$1.ciFlatMap(CloseableIterator.scala:98) 
    at org.locationtech.geomesa.accumulo.index.QueryPlanner.scan$1(QueryPlanner.scala:87) 
    at org.locationtech.geomesa.accumulo.index.QueryPlanner.executePlans(QueryPlanner.scala:108) 
    at org.locationtech.geomesa.accumulo.index.QueryPlanner.runQuery(QueryPlanner.scala:78) 
    at org.locationtech.geomesa.accumulo.data.AccumuloFeatureReaderWithStats$$anonfun$2.apply(AccumuloFeatureReader.scala:86) 
    at org.locationtech.geomesa.accumulo.data.AccumuloFeatureReaderWithStats$$anonfun$2.apply(AccumuloFeatureReader.scala:86) 
    at org.locationtech.geomesa.utils.stats.MethodProfiling$class.profile(MethodProfiling.scala:26) 
    at org.locationtech.geomesa.accumulo.data.AccumuloFeatureReaderWithStats.profile(AccumuloFeatureReader.scala:77) 
    at org.locationtech.geomesa.accumulo.data.AccumuloFeatureReaderWithStats.<init>(AccumuloFeatureReader.scala:86) 
    at org.locationtech.geomesa.accumulo.data.AccumuloFeatureReader$$anon$3.<init>(AccumuloFeatureReader.scala:55) 
    at org.locationtech.geomesa.accumulo.data.AccumuloFeatureReader$.apply(AccumuloFeatureReader.scala:55) 
    at org.locationtech.geomesa.accumulo.data.AccumuloDataStore.getFeatureReader(AccumuloDataStore.scala:439) 
    at org.locationtech.geomesa.accumulo.data.AccumuloFeatureCollection.reader(AccumuloFeatureSource.scala:171) 
    at org.geotools.data.store.DataFeatureCollection.openIterator(DataFeatureCollection.java:230) 
    at org.locationtech.geomesa.accumulo.data.AccumuloFeatureCollection.openIterator(AccumuloFeatureSource.scala:134) 
    at org.geotools.data.store.DataFeatureCollection.iterator(DataFeatureCollection.java:198) 
    at org.geotools.data.store.DataFeatureCollection.features(DataFeatureCollection.java:187) 
    at org.locationtech.geomesa.tools.accumulo.DelimitedExport.write(FeatureExporter.scala:156) 
    at org.locationtech.geomesa.tools.accumulo.commands.ExportCommand.execute(ExportCommand.scala:52) 
    at org.locationtech.geomesa.tools.common.Runner$class.main(Runner.scala:26) 
    at org.locationtech.geomesa.tools.accumulo.AccumuloRunner$.main(AccumuloRunner.scala:20) 
    at org.locationtech.geomesa.tools.accumulo.AccumuloRunner.main(AccumuloRunner.scala) 

답변

3

GeoMesa 자바 (8)이 필요합니다. 'java --version'명령이 실행됩니다. 사용중인 Java 버전의 세부 사항을 알려주십시오.

OS가 여러 버전의 Java를 처리하는 방법을 확인하고 Java 8 설치를 가리 키도록 JAVA_HOME을 업데이트해야합니다. 그 후에, 당신은 궤도에 돌아올거야!

CQL 필터와 나머지 명령은 훌륭하게 보입니다. 개인적으로 나는 인수 순서에 대해 생각할 필요가 없으므로 'bbox'또는 'intersects'를 선호합니다. (A가 B와 교차하면 B는 A와 교차합니다. A가 B 안에 있으면 B가 A 내에 있음을 의미하지 않습니다.)

+0

트릭을 해 주셔서 감사합니다. Java 7이 설치되었습니다. 자바 8로 전환했다. – kaxil

+0

굉장! 그것을 듣고 기뻐! – GeoMesaJim