As with the core, Lutece plugins declare a specific packaging in the POM:
<project> ... <groupId>fr.paris.lutece</groupId> <artifactId>lutece-foobar-plugin</artifactId> <packaging>lutece-plugin</packaging> <version>1.0</version>
A Lutece plugin also has a dependency on a lutece-core artifact:
<project> ... <dependencies> ... <dependency> <groupId>fr.paris.lutece</groupId> <artifactId>lutece-core</artifactId> <version>2.0.0</version> <type>lutece-core</type> </dependency>
The directory structure is similar to that of the core, but contains only plugin-specific elements:
src/java : the plugin-specific Java classes;
src/conf/default : the plugin-specific configuration files (default version);
webapp : the plugin-specific webapp components.
To try your plugin, call the lutece:exploded goal :
mvn lutece:exploded
This will:
retrieve the lutece-core artifact from the Maven repository;
install an exploded version of the core in target/lutece ;
copy the plugin-specific components to this exploded directory;
copy any specified configuration files (see this page ).
In the end, target/lutece contains a Lutece instance with your plugin installed. You can configure a Tomcat context on this directory to begin testing.