The jpa-maven-plugin is a standard Maven plugin that helps with unit- and integration-testing JPA projects. Install it and use it like other standard Maven plugins.
Install the plugin as you would any other Maven plugin. In your <build>'s <plugins> stanza, include a <plugin> element referencing the jpa-maven-plugin:
<plugin> <groupId>com.edugility</groupId> <artifactId>jpa-maven-plugin</artifactId> <version>3-SNAPSHOT</version> <!-- ...more to come. --> </plugin>
Please see the Goals page for more details on individual goals.
Produces a .properties file, usually named target/generated-test-sources/jpa-maven-plugin/entityClassnames.properties, that can be used as a filter to automatically supply the list of persistent class names required by the JPA specification.
This goal binds by default to the process-test-classes phase.
Here is an example of configuring the plugin to run this goal using the defaults:
<plugin> <groupId>com.edugility</groupId> <artifactId>jpa-maven-plugin</artifactId> <version>3-SNAPSHOT</version> <executions> <execution> <id>Generate entityClassnames.properties during the process-test-classes phase</id> <goals> <goal>list-entity-classnames</goal> </goals> </execution> </executions> </plugin>
You may bind this goal to another phase, but be aware that the goal scans class information, not source information, so it needs to be a goal that occurs after a compilation step. In practice, there is rarely a need to select a different phase.