1

根据Osmosis Github 站点,我已经安装了 Osmosis,我正在尝试通过键入以下内容将 osm 包放入 Elasticsearch:

$ osmosis --read-pbf ~/osm/extract/azores-latest.osm.pbf --write-elasticsearch cluster.hosts="localhost"

执行失败:

SEVERE: Execution aborted.
java.lang.NullPointerException at org.openstreetmap.osmosis.plugin.elasticsearch.utils.Parameters$Builder.loadResource(Parameters.java:57)
at org.openstreetmap.osmosis.plugin.elasticsearch.ElasticSearchWriterFactory.buildPluginParameters(ElasticSearchWriterFactory.java:49)
at org.openstreetmap.osmosis.plugin.elasticsearch.ElasticSearchWriterFactory.createTaskManagerImpl(ElasticSearchWriterFactory.java:27)
at org.openstreetmap.osmosis.core.pipeline.common.TaskManagerFactory.createTaskManager(TaskManagerFactory.java:60)

ElasticSearchWriterFactory 处理“plugin.properties”到Parameters$Builder.loadResource()方法。我试图通过在 /elasticsearch-osmosis-plugin-1.3.0.jar 中添加一些日志行来解决问题。所以我得到:

resource: plugin.properties
getClass() : class org.openstreetmap.osmosis.plugin.elasticsearch.utils.Parameters$Builder
getClass().getClassLoader() : ClassRealm[osmosis.core, parent: null]
getClass().getName() : org.openstreetmap.osmosis.plugin.elasticsearch.utils.Parameters$Builder
getClass().getPackage() : package org.openstreetmap.osmosis.plugin.elasticsearch.utils
getClass().getClassLoader().getResource(resource) : null
getClass().getClassLoader().getResource("/opt/osmosis-0.43/" + resource) : null

(最后一行是为了测试相对路径是否是问题,但这似乎不是问题。)

我还将plugin.properties 复制到任何我能想象到的感兴趣的位置/路径,即包根目录等......但没有成功。

有人知道如何解决这个问题吗?非常感谢!

4

0 回答 0