0

メタモデルクラスを作成するためにHibernateのモデルジェネレーターが必要なプロジェクトでJPA 2、Hibernate、およびCriteria APIを使用しています。

Ant ビルド プロセスでは、hibernate-jpamodelgen.jar の注釈プロセッサを含めて、メタ モデル クラスを生成しました。

問題は、生成されたクラスに依存するクラスが「symbol not found」コンパイル エラーのためにコンパイルされないことです。

[javac] ...\DocumentSpecifications.java:29: cannot find symbol
[javac] symbol  : class Document_
[javac] location: package ...entity
[javac] import ...entity.Document_;

Ant スクリプトは次のようになります。

<javac srcdir="@{from}" 
  destdir="@{to}"
  source="${compile.option.source-version}"
  target="${compile.option.target-version}"
  debug="${compile.option.debug}"
  debuglevel="${compile.option.debuglevel}"
  includeAntRuntime="false"
  fork="${compile.option.fork}"
  classpathref="path.ivy.libs.compile"
  encoding="${sourcefiles.encoding}">
    <compilerarg line="${compile.option.compilerarg} -s @{metamodel}" />
 </javac>

Ant のターゲット ディレクトリを調べると、src/metamodel フォルダーにメタ モデル Java クラス (.java) が正常に作成されていますが、build/classes フォルダーにコンパイルされたクラス (.class) はありません。

生成されたクラス ファイルを含めるように Ant または Java コンパイラに教える方法を知っている人はいますか?

4

1 に答える 1