From: Matthieu C. <cho...@gm...> - 2010-09-28 08:25:23
|
Hi, I just updated plugin-build to be able to use ivy. The first thing to know is that it is not mandatory (yet ?) and the plugin-build.xml should still work for plugins that don't use ivy. The goal is to help building plugins by getting the dependencies automatically. Previously to build a plugin, it was necessary to read it's build.xml and PluginXXX.props to see what libraries and other plugins were needed, get them and copy the jars in the good place to compile. Using ivy, this job is simplified. Instead of defining the <path id="project.class.path"> in your build.xml, you can remove it and create a ivy.xml file in your project that will define your dependencies. For example in the case of RFCReader plugin, this plugin needs Hyperlinks 1.0.1 and the lucene-core library. The ivy.xml content is : <ivy-module version="2.0"> <info organisation="jedit-plugins" module="RFCReader"/> <dependencies> <dependency org="jedit-plugins" name="Hyperlinks" rev="1.0.1"/> <dependency org="org.apache.lucene" name="lucene-core" rev="3.0.2"/> </dependencies> </ivy-module> lucene-core 3.0.2 will be downloaded from the maven central repository http://repo1.maven.org/maven2/org/apache/lucene/lucene-core/3.0.2/lucene-core-3.0.2.jar For the jEdit plugins it is a little different : for the organization you have to tell "jedit-plugins". Doing that ivy will not retrieve from maven repository but from our sourceforge.net project using the ivysettings.xml that is defined in plugin-build. It is also possible to edit ivysettings.properties if you want to change the mirror you use to download the plugins. And of course ivy is self installing, it will create a .ant folder in your home directory. To summarize, if you want to use ivy : remove the project.class.path and create ivy.xml You can try it on RFCReader plugin http://jedit.svn.sourceforge.net/svnroot/jedit/plugins/RFCReader/trunk Matthieu |