# Plugin development docs

**URL:** <https://discuss.elastic.co/t/plugin-development-docs/8949>\
**Category:** Elasticsearch\
**Created:** [September 7, 2012, 3:05am UTC](https://discuss.elastic.co/t/plugin-development-docs/8949 "2012-09-07T03:05:21Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Vinicius\_Carvalho](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/vinicius_carvalho/32/770_2.png) [@Vinicius\_Carvalho](https://discuss.elastic.co/u/Vinicius_Carvalho)\
**Post date:** [September 7, 2012, 3:05am UTC](https://discuss.elastic.co/t/plugin-development-docs/8949/1 "2012-09-07T03:05:21Z")

</div>

Is there an official documentation for plugin development or looking at  
other's source code still the best place?

I'm starting a new plugin, but I'm a bit lost without a javadoc or a guide  
to start. Any pointers?

Regards

--

---

<div class="post-metadata">

**Author:** ![Vinicius\_Carvalho](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/vinicius_carvalho/32/770_2.png) [@Vinicius\_Carvalho](https://discuss.elastic.co/u/Vinicius_Carvalho)\
**Post date:** [September 8, 2012, 11:05pm UTC](https://discuss.elastic.co/t/plugin-development-docs/8949/2 "2012-09-08T23:05:09Z")

</div>

Sorry for bumping up this topic, but I'm looking at other's plugins to  
figure out how to create mine :). But one thing I could not find is an easy  
way to test the plugin. So far I'm depending on installing and using the  
logger to see if its working ☹

I'm relying on unit testing, but I'd like to use an integration test to  
maybe bootstrap a node and install my plugin and test it.

Has anyone here managed to do something like this before?

Regards

On Thursday, September 6, 2012 11:05:21 PM UTC-4, Vinicius Carvalho wrote:

> Is there an official documentation for plugin development or looking at  
> other's source code still the best place?
> 
> I'm starting a new plugin, but I'm a bit lost without a javadoc or a guide  
> to start. Any pointers?
> 
> Regards

--

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [September 9, 2012, 3:49am UTC](https://discuss.elastic.co/t/plugin-development-docs/8949/3 "2012-09-09T03:49:10Z")

</div>

Hi Vinicius,

You could look at :  
[https://github.com/dadoonet/rssriver/blob/master/src/test/java/org/elasticsearch/river/rss/RssRiverTest.java](https://github.com/dadoonet/rssriver/blob/master/src/test/java/org/elasticsearch/river/rss/RssRiverTest.java)  
And mother classes :  
[https://github.com/dadoonet/rssriver/blob/master/src/test/java/org/elasticsearch/river/rss/AbstractRssRiverSimpleTest.java](https://github.com/dadoonet/rssriver/blob/master/src/test/java/org/elasticsearch/river/rss/AbstractRssRiverSimpleTest.java)  
[https://github.com/dadoonet/rssriver/blob/master/src/test/java/org/elasticsearch/river/rss/AbstractRssRiverTest.java](https://github.com/dadoonet/rssriver/blob/master/src/test/java/org/elasticsearch/river/rss/AbstractRssRiverTest.java)

When you start a node from a test, it detects your plugin in classpath as you have this file in your project: src/main/resources/es-plugin.properties

So, you can create whatever you want using your plugin, index and search for docs.

HTH

--  
David 😉  
Twitter : @dadoonet / @elasticsearchfr / @scrutmydocs

Le 9 sept. 2012 à 01:05, Vinicius Carvalho [viniciusccarvalho@gmail.com](mailto:viniciusccarvalho@gmail.com) a écrit :

Sorry for bumping up this topic, but I'm looking at other's plugins to figure out how to create mine :). But one thing I could not find is an easy way to test the plugin. So far I'm depending on installing and using the logger to see if its working ☹

I'm relying on unit testing, but I'd like to use an integration test to maybe bootstrap a node and install my plugin and test it.

Has anyone here managed to do something like this before?

Regards

On Thursday, September 6, 2012 11:05:21 PM UTC-4, Vinicius Carvalho wrote:  
Is there an official documentation for plugin development or looking at other's source code still the best place?

I'm starting a new plugin, but I'm a bit lost without a javadoc or a guide to start. Any pointers?

## Regards

--

---

<div class="post-metadata">

**Author:** ![Mohit\_Chawla](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/mohit_chawla/32/2243_2.png) [@Mohit\_Chawla](https://discuss.elastic.co/u/Mohit_Chawla)\
**Post date:** [September 9, 2012, 9:57am UTC](https://discuss.elastic.co/t/plugin-development-docs/8949/4 "2012-09-09T09:57:21Z")

</div>

Hello,

On Fri, Sep 7, 2012 at 8:35 AM, Vinicius Carvalho  
[viniciusccarvalho@gmail.com](mailto:viniciusccarvalho@gmail.com) wrote:

> I'm starting a new plugin, but I'm a bit lost without a javadoc or a guide  
> to start. Any pointers?

This nicely written example by Jorg Prante might be helpful:  
[http://jprante.github.com/lessons/2012/03/27/Writing-a-simple-plugin-for-Elasticsearch.html](http://jprante.github.com/lessons/2012/03/27/Writing-a-simple-plugin-for-Elasticsearch.html)

--

---

<div class="post-metadata">

**Author:** ![Brad\_Voth](https://avatars.discourse-cdn.com/v4/letter/b/5f8ce5/32.png) [@Brad\_Voth](https://discuss.elastic.co/u/Brad_Voth)\
**Post date:** [September 10, 2012, 3:58am UTC](https://discuss.elastic.co/t/plugin-development-docs/8949/5 "2012-09-10T03:58:23Z")

</div>

javadocs can be created through the javadoc:javadoc maven goal. I found  
this the other day and they have helped tremendously with my work.

On Thursday, September 6, 2012 11:05:21 PM UTC-4, Vinicius Carvalho wrote:

> Is there an official documentation for plugin development or looking at  
> other's source code still the best place?
> 
> I'm starting a new plugin, but I'm a bit lost without a javadoc or a guide  
> to start. Any pointers?
> 
> Regards

--

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 6, 2017, 3:13am UTC](https://discuss.elastic.co/t/plugin-development-docs/8949/6 "2017-07-06T03:13:29Z")

</div>


