首先,我对Geoserver的geootols扩展开发很陌生。我正在开发一个新的扩展程序,它将返回几何区域。当我构建项目时,一切顺利,但是当我执行“ maven install”时,maven给我错误消息,即“类型参数javax.measure.quantity。区域不在类型变量Q的范围内”。我认为这来自于依赖关系,因为那不过我没有导入“ unit-api”,它是在安装maven时下载的。正在遵循“ https://docs.geotools.org/latest/userguide/welcome/upgrade.html”中的这些说明,这是我的poom.xml
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<gs.version>2.16-SNAPSHOT</gs.version> <!-- change to GeoServer version -->
<gt.version>23-SNAPSHOT</gt.version>
<geoserver.version>GEOSERVER_VERSION</geoserver.version>
<geotools.version>GEOTOOLS_VERSION</geotools.version>
</properties>
<dependencies>
<dependency>
<groupId>org.geotools</groupId>
<artifactId>gt-process</artifactId>
<version>${gt.version}</version>
</dependency>
<dependency>
<groupId>org.geoserver</groupId>
<artifactId>gs-main</artifactId>
<version>${gs.version}</version>
<classifier>tests</classifier>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.locationtech.jts</groupId>
<artifactId>jts-core</artifactId>
<version>1.16.1</version>
</dependency>
<dependency>
<groupId>org.geotools</groupId>
<artifactId>gt-geojson</artifactId>
<version>${gt.version}</version>
</dependency>
<dependency>
<groupId>javax.measure</groupId>
<artifactId>jsr-275</artifactId>
<version>0.9.4</version>
</dependency>
</dependencies>
这是出错的代码行
public static javax.measure.Measure<javax.measure.quantity.Area> GetAreaSMWPS(
@DescribeParameter(name = "geom", description = "Input Geometry")
Geometry geom) {
return javax.measure.Measure.valueOf(geom.getArea(), SI.SQUARE_METRE);
}
已经感谢您的帮助