Java ライブラリを使用して JSON ドキュメントを変換するために、次の Groovy スクリプトを作成しました。しかし、どういうわけか、必要なjarからクラスをロードできません。私はいつも得るjava.lang.ClassNotFoundException: de.is24.gis.geotools.CoordinateTransformer
Jar ファイルは、groovy スクリプトと同じディレクトリにあります。groovy スクリプトを呼び出す方法を編集することはできません。リバーによって自動的に呼び出されます。
import groovy.json.JsonSlurper
geo = new GeoTransformer()
geo.transform(ctx.document)
class GeoTransformer {
void transform(doc) {
this.getClass().classLoader.addURL(new File("gis-geotools-1.9.0.jar").toURL())
def CoordinateTransformer = Class.forName("de.is24.gis.geotools.CoordinateTransformer").newInstance();
def x = doc.realEstateCommonData.locationDto.geoCoordinateDto.xCoordinate;
def y = doc.realEstateCommonData.locationDto.geoCoordinateDto.yCoordinate;
def coords = CoordinateTransformer.transformFromLambertEuToWgs84(x,z)
println coords.getLatitude()
println coords.getLongitude()
def jsonObj = new JsonSlurper().parseText( '{"type" : "Point", "coordinates" : [' + coords.getLatitude() + ',' + coords.getLongitude() + ']}' )
doc.location = jsonObj
}
}