Hibernate靜態元模型生成器既能夠經過命令行使用,也能夠集成在IDE中使用。大多數狀況下,若是使用了jdk6及以上的版本,而且註解處理器的jar已經被包含在classpath中,註解處理器會自動的運行,由於Hibernate靜態元模型生成器的jar包的META-INF/services目錄裏已經包含了文件javax.annotation.processing.Processor。 java
在maven構建的過程當中,有幾種方式能夠運行註解處理器。其一,就是上面提到的在classpath中引入它的jar包。若是在classpath中有多個註解處理器,能夠在maven的編譯插件中傳入處理選項參數 api
<plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.6</source> <target>1.6</target> <compilerArguments> <processor>org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor</processor> </compilerArguments> </configuration> </plugin>使用maven-compiler-plugin的方式的缺點是maven編譯插件當前不容許指定多個編譯參數。一個比較好的方式是在編譯插件中禁用註解處理器,使用maven-processor-plugin。能夠按照以下方式禁用 maven-compiler-plugin:
<plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.6</source> <target>1.6</target> <compilerArgument>-proc:none</compilerArgument> </configuration> </plugin>
按照上面處理以後,就能夠在maven-processor-plugin中使用註解處理器。能夠按照以下配置: eclipse
<plugin> <groupId>org.bsc.maven</groupId> <artifactId>maven-processor-plugin</artifactId> <version>2.0.5</version> <executions> <execution> <id>process</id> <goals> <goal>process</goal> </goals> <phase>generate-sources</phase> <configuration> <processors> <processor>org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor</processor> </processors> </configuration> </execution> </executions> <dependencies> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-jpamodelgen</artifactId> <version>4.3.5.Final</version> </dependency> </dependencies> </plugin>
在Galileo版本以後,在eclipse的Java Compiler(右鍵點擊項目->屬性)裏增長了一個名爲Annotation Processing的選項,用於配置各類各樣的註解處理。打開Annotation Processing的配置界面,勾選「Enable Annotation Processing」,配置代碼生成的目錄,而後,切換到下面的「Factory Path」配置界面,點擊Add Jars,將JPA2.0和hibernate-jpamodelgen的jar包引入,點擊Apply,便可: maven
———————————————————————————————————————————————————————————————— spa
hibernate-jpa-2.0-api-1.0.1.Final.jar hibernate