[[java-api]] = Java API :ref: http://www.elastic.co/guide/en/elasticsearch/reference/master [preface] == Preface This section describes the Java API that elasticsearch provides. All elasticsearch operations are executed using a <> object. All operations are completely asynchronous in nature (either accepts a listener, or returns a future). Additionally, operations on a client may be accumulated and executed in <>. Note, all the APIs are exposed through the Java API (actually, the Java API is used internally to execute them). == Maven Repository Elasticsearch is hosted on http://search.maven.org/#search%7Cga%7C1%7Ca%3A%22elasticsearch%22[Maven Central]. For example, you can define the latest version in your `pom.xml` file: [source,xml] -------------------------------------------------- org.elasticsearch elasticsearch ${es.version} -------------------------------------------------- == Deploying in JBoss EAP6 module Elasticsearch and Lucene classes need to be in the same JBoss module. You should define a `module.xml` file like this: [source,xml] -------------------------------------------------- -------------------------------------------------- include::client.asciidoc[] include::docs.asciidoc[] include::search.asciidoc[] include::aggs.asciidoc[] include::percolate.asciidoc[] include::query-dsl.asciidoc[] include::indexed-scripts.asciidoc[]