1

春にesクライアントを作成しながら、elasticsearchでShieldプラグインを使用しようとしています。次の依存関係を pom.xml に追加しました

<dependency>
<groupId>org.elasticsearch.plugin</groupId>
<artifactId>shield</artifactId>
<version>2.4.0</version>
</dependency>

以下の方法で Bean を作成しています。

@Override
protected TransportClient createInstance() throws Exception
{
    TransportClient client = null;
    String userpass = this.username+":"+this.password;
    client = TransportClient.builder()
    .addPlugin(ShieldPlugin.class)
    .settings(Settings.builder()
        .put("shield.user", userpass)
        .build()).build()
    .addTransportAddress(toAddress());
    return client;
}

しかし、Bean が作成されると、次のエラーが発生します。

java.lang.ClassNotFoundException: org.elasticsearch.shield.ShieldPlugin
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1333)
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1167)
    ... 116 more

これに関するヘルプをいただければ幸いです。

前もって感謝します。

4

2 に答える 2