http://docs.jboss.org/hibernate/stable/jpamodelgen/reference/en-US/html_single/に従ってHibernate JPA 2メタモデルジェネレーターを学んだとき、正常に機能しています。
mvn compile
を実行してこれらのメタモデルを生成しようとすると、以下のように対応するクラスと奇妙なフォルダ 'generated-sources'がターゲットフォルダに生成され、対応するjavaファイルがソースフォルダに生成されませんでした。以下は Hibernate JPA 2 Metamodel Generatorの使い方は?
のpom.xmlに私の関連する構成である。
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<compilerArgument>-proc:none</compilerArgument>
</configuration>
</plugin>
<plugin>
<groupId>org.bsc.maven</groupId>
<artifactId>maven-processor-plugin</artifactId>
<version>3.2.0</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>
</plugin>
</plugins>
だから、私の質問はです:この予想される動作はありますか?はいの場合は、毎回メタモデルを使用する前にコードをコンパイルする必要がありますか?いいえ、どうすればソースコードフォルダにJavaファイルを生成できますか?
ありがとうございます。
メタクラスは実際にはtarget/generated-sources/aptで生成されます。しかし、それらもtarget/classesフォルダに生成されます。つまり、同じメタクラスが2つのフォルダに生成されます。それは期待される行動ですか? – Xiaoyuan
あなたが投稿していないものを持っていない限り、それはあなたが投稿した設定に従ってはいけません。しかし、コンパイルされたクラスは 'target/classes'の下になければなりません。 * MyEntity_.java *のようなソースクラスは 'generated-sources'フォルダに移動しますが、* MyEntity_.class *のようなコンパイルされたクラスは' target/classes'フォルダの下にあります。 – ujulu
お返事ありがとうございます。本当に役に立ちます。 – Xiaoyuan