Persistence.xmlのJARファイル名の問題 -- java フィールド と maven フィールド と jakarta-ee フィールド と jpa フィールド 関連 問題

Jar file name problems in persistence.xml












3
vote

問題

日本語

JPAエンティティを持つライブラリを内部の lib フォルダに含むイヤーファイルを作成するMavenビルドを構築しています。 EARファイルには、 99887661 が1つあり、 <jar-file> タグを使用してエンティティを追加します。

<事前> <コード> <persistence-unit name="some-id"> <jar-file>MyEntities-1.0.0-SNAPSHOT.jar</jar-file>

MyEntities libは別のMavenプロジェクトで構築されています。

これはローカルで行われている限り、iaw、iは mvn install を使用し、リモートスナップショットリポジトリには展開しません。ローカル .m2 REPOとリモート・レポの済みのJARファイル名が異なるため、REPOへのデプロイを開始すると失敗します。

mvn install は、ローカルリポジトリの MyEntities-1.0.0-SNAPSHOT.jar という名前のファイルを作成します。 99887669 persistence.xml0 リポジトリ

現在のローカルビルドとMavenの新しいスナップショットアップデートを探す(ポリシーベースまたは persistence.xml1 フラグ)、リモートファイルをローカルレポに引き下げて、その中でのリモートファイルをLocal RepoとJARに引きます。名前がEARにコピーされ、エンティティが見つからないため、展開時にJPAエラーが発生します(persistence.xmlで宣言されているさまざまなJARファイル)。

耳ファイルを組み立てる前に常に局所的に建設することとは別に、その問題に対する解決策はありますか?

英語

We have a maven build that creates an ear file that includes libraries with JPA entities in its internal lib folder. The ear file has one persistence.xml, where we add the entities using the <jar-file> tag:

<persistence-unit name="some-id">     <jar-file>MyEntities-1.0.0-SNAPSHOT.jar</jar-file> 

The MyEntities lib is build with a separate maven project.

This works fine as long as the build is done locally, iaw, I only use mvn install and do not deploy to a remote snapshot repository. It fails, when we start deploying to a repo because of different jar file names in the local .m2 repo and the remote repo:

mvn install creates a file named MyEntities-1.0.0-SNAPSHOT.jar on the local repo, mvn deploy a file named MyEntities-1.0.0-20131212-145600-42.jar on the remote repository.

Now, if someone deployed after my last local build and maven looks for new snapshot updates (policy based or with -U flag), it pulls the remote file to the local repo and the jar with THAT name is copied to the ear, which causes JPA errors at deploy time because the entities can't be found (different jar file declared in persistence.xml).

Is there a solution to that problem apart from always building locally before assembling the ear file?

</div
           
         
         

回答リスト

0
 
vote

これは私たちのプロジェクトのために機能します:

<事前> <コード> <persistence-unit name="foo"> <!-- property comes from root pom.xml --> <jar-file>../lib/foo-${bar.version}.jar</jar-file> <properties> </properties> </persistence-unit>

<事前> <コード> <build> <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> <includes> <include>META-INF/persistence.xml</include> </includes> </resource> </resources> </build>
 

This works for our project:

<persistence-unit name="foo">     <!-- property comes from root pom.xml -->     <jar-file>../lib/foo-${bar.version}.jar</jar-file>     <properties>      </properties> </persistence-unit> 

 <build>     <resources>         <resource>                 <directory>src/main/resources</directory>                 <filtering>true</filtering>                 <includes>                     <include>META-INF/persistence.xml</include>                 </includes>          </resource>      </resources> </build> 
</div
 
 

関連する質問

53  Hibernate:Myisamの代わりにMySQL InnoDBテーブルを作成します  ( Hibernate create mysql innodb tables instead of myisam ) 
Hibernate(JPAを使って)MySQL InnoDBテーブルを作成するにはどうすればよいですか(Myisamの代わりに)。 Hibernateを使用してテーブルを作成するためにSQLファイルを生成するときに機能するソリューションが見つかりましたが、「...

35  JPA(注釈付きエンティティ)とLiquibaseを使用してHibernate  ( Hibernate using jpa annotated entities and liquibase ) 
Liquibaseは、Hibernateの hbm2ddl_auto XMLマッピングを使用している場合しかし、JPAアノテーション(Hibernateアノテーション)を使用しているIM。それは石膜ゼを使用することが可能ですか? ...

2  JPAアップデートクエリ - トランザクションが機能しないのはなぜですか?  ( Jpa update query why wont my transaction work ) 
JavaDB(Derby)書き込みトランザクションに関するパフォーマンス上の問題があります。各取引には500ミリ秒以上かかります、そして私は何千もの日を持つかもしれません。私はMySQLに展開することを期待しています、そして私がそこに同じ問題を抱えているのか...

0  Entity Managerを扱う方法オブジェクトインスタンスケースを見つけることはできませんか?  ( How to handle entity manager can not find an object instance case ) 
私は、Entity Managerに厄介なインスタンスが存在するかどうかを確認しなければならないSceneArioがあります。インスタンスがEEXISSISTSがEEXISTSISTORになるとうまく機能しますが、NOTがNOTの場合はNULLポインタ例外がス...

1  多数のJava JPA多型マッピング  ( Java jpa polymorphic mapping on many to one ) 
多型型との多対1の関係をJPAをマッピングしようとしていますが、私は運がいません。なぜそれが不可能であるのか、またはマッピングで具体的な型を宣言することを強制される理由はわかりません。これが例です。 <事前> <コード> @MappedSuperclass c...

8  Oracle 10gの方言でHibernateを使用してJPAを使用してHibernate_Sequenceという名前のシーケンスがあるのはなぜですか。  ( Why is a sequence named hibernate sequence being created with jpa using hibernat ) 
すべての私のエンティティこのタイプの @Id <事前> <コード> @Id @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "MYENTITY_SEQ") @SequenceG...

1  小さなJavaデスクトップアプリケーションで使用される最高の組み込みデータベースは何でしょうか。 [閉まっている]  ( What will be the best embedded database to be used with a small java desktop app ) 
現在立つにつれて、この質問は私たちのQ&AMPにとって良いフィットではありません。フォーマット。私たちは事実、参考文献、または専門知識によって支持されることを期待していますが、この質問は...

7  JPA:orm.xmlを使用してエンティティクラスをクリーンアップする必要がありますか?  ( Jpa should i clean up my entity classes using orm xml ) 
現在JPAアノテーションのみを使用していますが、本当に多くのORMの詳細(テーブル名、ID生成戦略、結合列など)で私のエンティティクラスを汚染しているのは本当に好きではありません。 ...) 私は、その DataN-核が代わりにXMLにORM関連の注釈を付ける...

1  Spring&Hibernate EJBイベント  ( Spring hibernate ejb events ) 
スプリングマネージEJB3休止リスナーを定義することは可能ですか? 私はこの定義を持っています persistence.xml : <事前> <コード> <properties> <property name="hibernate.ejb.inter...

29  JPA - Criteria APIとEmbeddedID  ( Jpa criteria api and embeddedid ) 
基準を使用して次のクエリを作成したいです。 embeddedid 定義されたエンティティがあります: <事前> <コード> @Entity @Table(name="TB_INTERFASES") public class Interfase impl...




© 2022 cndgn.com All Rights Reserved. Q&Aハウス 全著作権所有