簡體   English   中英

打包一個可運行的JPA jar,將persistence.xml放在外面

[英]Package a runnable JPA jar putting persistence.xml outside

我想將我的jpa / swing項目導出到一個可運行的jar中。 但是我希望persistence.xml在jar里面沒有打包,所以我可以在不需要在每次配置后再次導出jar的情況下更改它。

根據JPA規范,在定義持久性單元的JAR文件之外無法檢測到persistence.xml文件。 按照慣例,它應該放在META-INF目錄中。

有關詳細信息,請閱讀JSR-317第8.2.1段( http://download.oracle.com/otndocs/jcp/persistence-2.0-fr-eval-oth-JSpec/ )。

不過,你可以嘗試這家伙提出的提示在這里並以分解的形式部署檔案。

我有同樣的問題,但我只需要更改服務器,數據庫,用戶和密碼。 所以這對我來說:

在JBoss AS中,您甚至可以將屬性值作為占位符,例如:

<property name="javax.persistence.jdbc.url" value="jdbc:sqlserver://${DbServer}:1234;databaseName=${DbName}" />
<property name="javax.persistence.jdbc.user" value="${DbUser}" />
<property name="javax.persistence.jdbc.password" value="${DbPassword}" />

然后將“DbServer”,“DbName”,“DbUser”和“DbPassword”值作為Java系統屬性傳遞:

-DDbServer=sql99 -DDbName=db_Name -DDbUser=USER -DDbPassword=pw

在Eclipse中:

vm args in eclipse

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM