2017-01-23 9 views
6

मुझे स्टार्टअप पर सामान्य प्रॉपर्टी फ़ाइलों की सेवा करने, मेरे अनुप्रयोगों के लिए एक वसंत क्लाउड सर्वर मिला।स्प्रिंग क्लाउड कॉन्फ़िगरेशन - अतिरिक्त फ़ाइलों को लोड करना

'सामान्य' कार्यक्षमता ठीक काम कर रही है। एक आवेदन फाइलों के पदानुक्रम प्राप्त करता है और लोड किए गए पैरामीटर तक पूर्ण पहुंच प्राप्त करता है।

Application.properties 
Application-<profile>.properties 
<applicationname>.properties 
... 

अब सवाल: मैं आम नामकरण के बगल में एक विन्यास फाइल कैसे लोड कर सकते हैं?

यदि मैं रिपोजिटॉय में एक और फ़ाइल संग्रहीत कर रहा हूं उदा। sharedCommonServers.properties, मैं कॉन्फ़िगर सर्वर का उपयोग कर इस फ़ाइल को अतिरिक्त रूप से कैसे लोड कर सकता हूं? इस फ़ाइल में कुछ प्रयुक्त गुण हैं लेकिन सभी प्रोग्राम नहीं हैं।

अग्रिम धन्यवाद!

हेंड्रिक

+0

'@PropertySource (" classpath: SharedCommonServers.properties ") ', बस इसे अपने एप्लिकेशन क्लास में जोड़ें। –

+0

क्लाउड कॉन्फ़िगर सर्वर का उपयोग करके साझा किया गया CommonServers.properties लोड किया जाना चाहिए। मैंने आपकी लाइन को कॉन्फ़िगरेशन में जोड़ा है, लेकिन ऐसा लगता है कि यह लोड नहीं होता है। क्या यह सही है, यह लाइन केवल स्थानीय स्टोरेज से फ़ाइल लोड करेगी, या इसे कॉन्फ़िगर सर्वर का भी उपयोग करना चाहिए? –

+0

देखें [यह उत्तर] (http://stackoverflow.com/a/41374808/390513), यह सहायक होना चाहिए। – Kane

उत्तर

4

ठीक है, कम से कम मैं एक समाधान मिला:

मैं बादल config के सामान्य आवेदन संदर्भ लिया। इस संदर्भ में मैंने अपनी फ़ाइल साझा की गई कॉमन सर्वर.प्रोपर्टीज को एक विशेष प्रोफ़ाइल के साथ डिफ़ॉल्ट एप्लिकेशन प्रॉपर्टी फ़ाइल के रूप में रखा है।

का नाम बदलने:

'sharedCommonServers.properties' to 'application-commonServers.properties' 

'commonServers' वसंत बादल config अलावा यह प्राप्त करने में कठिनाई है प्रोफ़ाइल सेटिंग्स विस्तार करके।

देखभाल करें अन्य प्रोफ़ाइल-लाइन में कोई ओवरलैपिंग संपत्ति-कुंजी नहीं है।

तो मेरी वातावरण में जब मैं सेट ...

-Dspring.profiles.active=prod,commonServers' 

... मैं अपनी डिफ़ॉल्ट prod विन्यास और के रूप में 'commonServers की प्रोफाइल चिह्नित उन मिलता है।

application.properties 
application-prod.properties 
application-commonServers.properties // the additional one 
<appname>.properties 
<appname>-prod.properties 
// and <appname>-commonServers.properties if I would need it 

आपके सुझावों और विचारों के लिए धन्यवाद!

संबंधित मुद्दे