Sun GlassFish Enterprise Server v3 Prelude Add-On Component Development Guide

Using the Apache Maven Build System to Develop HK2 Components

If you are using Maven 2 to build HK2 components, invoke the auto-depends plug-in for Maven so that the META-INF/services files are generated automatically during build time.


Example 2–4 Example of the Maven Plug-In Configuration

<plugin>
	<groupId>com.sun.enterprise</groupId>
	<artifactId>hk2-maven-plugin</artifactId>
	<configuration>
		<includes>
			<include>com/sun/enterprise/v3/**</include>
		</includes>
	</configuration>
</plugin>


Example 2–5 Example of META-INF/services File Generation

This example shows how to use @Contract and @Service and the resulting META-INF/services files.

The interfaces and classes in this example are as follows:

package com.sun.v3.annotations;
@Contract
public interface Startup {...}

package com.wombat;
@Contract
public interface RandomContract {...}

package com.sun.v3;
@Service
public class MyService implements Startup, RandomContract, PropertyChangeListener {
	...
}

These interfaces and classes generate this META-INF/services file with the MyService content:

com.sun.v3.annotations.Startup
com.wombat.RandomContract