在以下情况下,我缺少哪个依赖项:
No OperationDescriptor is registered in the current operation registry
返回为什么要尝试通过JAI使用地理工具对图像进行矢量化?
compile group: 'org.geotools', name: 'gt-arcgrid', version: '18.4'
compile group: 'org.geotools', name: 'gt-process-raster', version: '18.4'
compile group: 'org.geotools', name: 'gt-main', version: '18.4'
https://github.com/geoHeil/vectorizePolygons包含示例代码。
从IntelliJ执行代码时,一切正常。 仅当从gradle或maven创建的胖罐执行代码时,代码才能加载某些依赖项。
即使在这里http://docs.geotools.org/stable/userguide/faq.html#how-do-i-create-an-executable-jar-for-my-geotools-app进行后续操作,也请参见:https://github.com/geoHeil/vectorizePolygons/blob/master/maven/pom.xml IntelliJ会看到一个不同的类路径,它们都可以正常工作。但是,创建胖子罐时,maven或gradle都不会报告任何问题。
Maven失败并显示另一个错误:
javax.imageio.spi.ImageReaderSpi: Provider it.geosolutions.imageioimpl.plugins.tiff.TIFFImageReaderSpiit.geosolutions.imageio.plugins.arcgrid.spi.AsciiGridsImageReaderSpi not found
gradle在此行失败:
final RenderedOp asciiCoverage = JAI.create("ImageRead", pbjImageRead, hints);
这似乎与两个地方的图像读取有关。
在修正了maven问题(更新了maven-shade-plugin)之后,现在maven还报告了JAI
操作注册表中缺少的注册。
RangeLookup
丢失。