JM plugin development

Hi,

I need to develop a JM plugin, but i’‘m new to it. So i really need some help. I’‘d like to develop the plugin standalone using just a precompiled JM server and Eclipse. I have the server (2.1.5), eclipse (3.1) and a copy of the Broadcast plugin running. But I can’'t figure out how to configure Eclipse in such a manner that the server is (re)started and the plugin is plugged into the server if I need to debug the plugin. Or am i going about it the wrong way entirely?

Any help would be greatly appreciated.

Hans

Hans,

I would recommend using the Ant script to deploy the plugin (to target/plugins). If you’'re running the server using the target/bin scripts then the plugin will automatically be picked up and re-deployed.

Regards,

Matt

Hi Hans,

Just to expand slightly on what Matt said… you’‘ll need to download the Messenger source to get the ant build script. The nice thing about having the Messenger source is that you’'ll get the source to few different plugins which might be of interest to you.

Hope that helps,

Ryan

In order to debug through your plugin you will need to attach your eclipse to a running Jive Messenger. I am not sure, but I don’'t think the default installation is built with debugging info, so the easiest way to do this is to have the actual messenger source. Then you can attach to it or maybe even launch from eclipse. There were a few threads about that already if you have a search you may find it.

As Ryan mentioned, using JM build script you can also build and deploy you plugin.

  1. rename build\build.properties.template to build.properties

  2. add the location of your plugin dir to the entry “plugin.dev.dir=” as per the instruction

Then only other thing I can suggest is that you try to keep code that is independant of Jive Messenger in seperate class(es), so you can test your code outside of a running messenger. You can even write unit tests for them. If I may suggest you have a look at the content filter (plug!) src, the actual message filtering is done in a seperate class so I could unit test it outside of Jive Messenger.

Hope that helps,

Conor.

heres Gatos description for running in eclipse debugger.

http://www.jivesoftware.org/forums/thread.jspa?messageID=98370