2010-02-25 32 views
22

dayalı bir dosyada bir değer ben ortamına bağlı olarak değişen dinamik bir özellik ile benim uygulamada ApplicationResources.properties adlı bir özellikler dosyası var. Bize özelliktir varsayalım:Maven Değişim profilinde

 resources.location=/home/username/resources 

ve uygulama geliştirme ve ne zaman başvuru üretime girdi sırasında çalıştırıldığında bu değer farklı.

ben farklı ortamlarda farklı yapı görevleri gerçekleştirmek için Maven farklı profiller kullanabilirsiniz biliyoruz. Yapmak istediğim, bir şekilde kullanımda Maven profiline dayanan özellikler dosyasındaki resources.location değerini değiştirmektir. Bu mümkün mü? Yapmak istediğim ne

cevap

46

kullanımda Maven profilini temel dosyası özelliklerinde resources.location değerini değiştirmek nasılsa olduğunu. Bu mümkün mü?

Evet öyle. Kaynak filtrelemeyi etkinleştirin ve her profilde yer alacak değeri tanımlayın. senin ApplicationResources.properties yılında

, böyle değiştirmek için bir belirteç beyan:

POM olarak
resources.location=${your.location} 

, böyle true uygun <resource> için <filtering> etiket eklemek ve ayarlayın:

<project> 
    ... 
    <build> 
    ... 
    <resources> 
     <resource> 
     <directory>src/main/resources</directory> 
     <filtering>true</filtering> 
     </resource> 
     ... 
    </resources> 
    ... 
    </build> 
    ... 
</project> 

: Sonra, her profilinin içinde <properties> öğesi içindeki bir <your.location> öğesi ekleyin kaynakların here ve here filtrelenmesi üzerine

Daha.

+1

@Pascal Thivent teşekkür ederiz. Bu mükemmel bir açıklama –

+0

+ 1 I ikinci bir tane: D – ant