使用GeoServer的Rest接口发布shp图层的坑

Geoserver的rest接口使用参考以下文章:
https://blog.csdn.net/weixin_40184249/article/details/87877740

在配置geoserver-manager库和slf4j-api、slf4j-log4j12库时需注意使用的版本不能有冲突,不然就会出现“NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log”的错误。
我使用Ideal进行编译,可以在使用GeoServer的Rest接口发布shp图层的坑
窗口最右边一列选择Maven查看冲突的jar包版本。(geoserver-manager1.7.0版本对应slf4j-api、slf4j-log4j12库是1.5.11)

1、发布shp图层时,需要把有关文件如.dbf、.shx同.shp文件一起打包成zip格式。
2、//创建shape文件存储时,需使用正确shp路径
GSShapefileDatastoreEncoder store = new GSShapefileDatastoreEncoder(geoStoreName, urlShapefile);
3、 //发布图层时,图层名geoLayerName必须与shp文件名一致
boolean publish = manager.getPublisher().publishShp(geoWorkSpace, geoStoreName, geoLayerName, zipFile, srs);