背景:使用geotools封装了一些方法,打包为含依赖项的jar包供其他人调用,在打包之前正常调用,打包后出现问题。
问题描述:创建featuretype,运行至下面代码出错:org.geotools.feature.SchemaException: Error decoding srs: 4326
//1. 创建feature Type
SimpleFeatureType featureType = DataUtilities.createType(
"Location",
"the_geom:MultiPolygon:srid=4326,"
+ // <- the geometry attribute: Point type
"lvalue:Double,"
+ // <- a String attribute
"hvalue:Double"// a number attribute
);
经查,此处需要依赖项:
<dependency>
<groupId>org.geotools</groupId>
<artifactId>gt-epsg-hsql</artifactId>
<version>${geotools.version}</version>
</dependency>
项目中已有该依赖项,重点是依赖项的顺序问题。
将该依赖项放至靠前的位置,再次打包,问题没有了。这里的具体原因不清楚,有时间需要学习一下maven依赖规则