2014-10-15 20 views
6
Ben java ... -Denv=prod ... ile benim program başlatmak ve

Sistem ortamı değişkeni @PropertySource değerinin bir parçası olarak nasıl kullanılır?

@PropertySource("classpath:/settings/$idontknowwhat$/database.properties")` 

okuma özelliklerine sahip olmak istiyorum

dosya: /settings/prod/database.properties

Ben #{systemProperties['env']} kullanarak denedi ama istisna çözülmezse:

Could not open ServletContext resource ['classpath:/settings/#{systemProperties['env']}/database.properties] 

cevap

7

Bulunan Sadece

@PropertySource("classpath:/settings/${env}/database.properties") 
'ü kullanabilirim
+0

Çalışıyorsa, yanıtı kabul edildi olarak işaretleyebilirsiniz. – angelcervera

+0

Maven maalesef $ {env} olduğunu göremiyor, bu yüzden başka bir yol seçilmelidir. Belki Maven conf? Gerçekten de, herhangi bir maven dağıtımı gerekli değil, hile yapar. –

+0

Maven burada nasıl bir ilişki var? Bu, Spring'in uygulama başlatılırken sağlanan komut satırı parametresine dayalı bir özellik kaynağını çözmesiyle ilgilidir. – Czar

İlgili konular