我前段时间使用ES 0.20.1构建了自己的ES插件。工作得很好。 今天,我想我会回到那个项目并首先尝试在最新版本(0.20.6)上重新部署它,就像我之前从0.19.8到0.20.1那样。
所以我更新了依赖项以使用0.20.6 lib,运行我的测试(全部通过)并构建了插件。 (我正在使用maven)
生成了一个名为elasticsearch-MyPlugin-0.20.6.zip
的文件,其中包含jar myplugin-0.0.1-SNAPSHOT-jar-with-dependencies.jar
然后像往常一样使用
部署我的插件sudo /usr/share/elasticsearch/bin/plugin -url /path/to/foler/containing/zipfile -install MyPlugin
用于工作...但它现在抛出以下错误:
-> Installing MyPlugin...
Failed to install MyPlugin, reason: no protocol: /path/to/foler/containing/zipfile
所以我回到ES文档中关于installing plugin的说法。
sudo /usr/share/elasticsearch/bin/plugin -url file:///path/to/foler/containing/zipfile -install elasticsearch-MyPlugin-0.20.6
这是输出:
-> Installing elasticsearch-MyPlugin-0.20.6...
Trying file:/path/to/foler/containing/zipfile...
Downloading .DONE
failed to extract plugin [/usr/share/elasticsearch/plugins/elasticsearch-MyPlugin-0.20.6.zip]: ZipException[error in opening zip file]
为了彻底,我有一个指向正确班级的文件es-plugin.properties
。
我认为我使用的名称和/或我安装插件的方式存在问题,但我无法解决错误。
答案 0 :(得分:9)
盲目地尝试多种解决方案后对它进行了抨击......
sudo /usr/share/elasticsearch/bin/plugin -url file:///path/to/the/actual/elasticsearch-MyPlugin-0.20.6.zip -install MyPlugin