在使用geojson库时,如何解决“导入包语法不允许的默认包”错误?

时间:2019-03-26 07:20:39

标签: java maven osgi geojson

我正在从版本14.2升级到新的geojson库到20.2。而且我一直在保持低于Maven构建错误的状态,该错误在捆绑包处理中失败,并显示消息“ the-default-package。-is-not-permitted-by-import-package-syntax”。

我希望使用捆绑处理的Maven构建能够成功,但是实际输出是“导入包语法不允许默认包”错误。

1 个答案:

答案 0 :(得分:0)

在将geotools库从旧版本14.2升级到新版本20.2的同时,进行了很多更改。

GeoTools Upgrade

这是可以帮助所有人轻松完成此操作的链接之一。但是随着geotools的升级,我们也更新了gt-geojson库。该库包含“ Skunkwork”类,没有任何包名称,这会在对Maven构建进行捆绑处理时导致上述错误。为避免此错误,我必须删除此类。而且效果很好。

修复之前

Geojson jar contains a class "Skunkwork" with no package name

POM配置:

 <dependency>
        <groupId>org.geotools</groupId>
        <artifactId>gt-geojson</artifactId>
        <version>20.2</version>
    </dependency>

修复后

Geojson jar contains no default package class

POM配置:

<dependency>
    <groupId>org.geotools</groupId>
    <artifactId>gt-geojson</artifactId>
    <version>20.2-fixed</version>
</dependency>

注意:该jar需要手动安装到本地存储库中。并且,如果代码库(例如Nexus,JFrog等)使用了固定的jar,则需要将其固定到远程工件上。