2012-12-28 55 views
0

我有幾個插件需要數據庫連接屬性pom.xml。這樣的我們:驅動程序,網址,用戶名,密碼。所有這些偏好我已經在persistence.xml文件中有。我可以直接使用它們,而無需創建新文件?重用maven項目中的常量和屬性?

回答

3

即使你可以,它也不會很漂亮。你可以用相反的方法來做 - 在pom.xml中指定這些參數作爲屬性(或者一個屬性文件),並使用maven resource filtering將它們注入到persistence.xml和任何其他需要@built時間的文件中。

所以你必須在你的pom.xml,是這樣的:

<properties> 
    <db.driver.class>com.acme.db.JdbcDriver</db.driver.class> 
    <db.url>localhost</db.url> 
</properties> 
... 
<build> 
    <resources> 
     <resource> 
     <directory>src/main/resources</directory> 
     <filtering>true</filtering> 
     <includes> 
      <include>**/*.xml</include> 
     </includes> 
     </resource> 
    </resources> 
    <plugins> 
     <plugin> 
     ... 
     <configuration> 
      <connection>${db.driver.class}/${db.url}</connection> 
     </configuration> 
     </plugin> 
    </plugins> 
</build> 

,並在您的persistence.xml你可以使用$ {} db.driver.class並讓它期間行家取代構建。

+0

我在情況,我有幾個配置文件連接到數據庫。他們存儲在persistence.xml和一些json文件中。我沒有看到在pom.xml中組織它們的理由。 – Slava

+0

你的意思是你想讓maven知道這些配置文件? – radai

+0

我需要一些方法來從持久性或json文件中直接使用maven中的這個配置文件屬性(類似於屬性maven插件) – Slava