Help

Hibernate Metamodel Generator 1.1.0.Final is now available for download either from the JBoss Maven repo or from SourceForge.

A look into the changelog shows three issues of which only METAGEN-45 is worth mentioning. Several people reported problems with metamodel classes not getting compiled, especially when the annotation processor was used in conjunction with the -s option (which specifies where to place generated source files). This is resolved by METAGEN-45.

I also would like to follow up on the question on how to best integrate the processor into maven build. As always there are more than one way to skin a cat and here is my preferred version:

...
   <plugins>
    <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
            <source>1.6</source>
            <target>1.6</target>
            <compilerArgument>-proc:none</compilerArgument>
        </configuration>
    </plugin>
    <plugin>
        <groupId>org.bsc.maven</groupId>
        <artifactId>maven-processor-plugin</artifactId>
        <version>1.3.7</version>
        <executions>
            <execution>
                <id>process</id>
                <goals>
                    <goal>process</goal>
                </goals>
                <phase>process-sources</phase>
            </execution>
        </executions>
        <dependencies>
            <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-jpamodelgen</artifactId>
                <version>1.1.0.Final</version>
                <scope>compile</scope>
            </dependency>
        </dependencies>
    </plugin>
...

The benefits of this version are that there is no need for the build-helper plugin and, more importantly, the processor is defined as a plugin dependency of the maven-processor-plugin instead of a direct project dependency. You find this and other setup versions in the online documentation of the Hibernate Metamodel Generator.

As always, feedback is always welcome. If you find a bug make sure to report it in METAGEN.

--Hardy

Post Comment