2013-04-24 3 views
31

मैं निम्नलिखित की तरह एक संरचना के साथ एक application.conf फ़ाइल है। अन्य कॉन्फ़िगरेशन कुंजियों के लिए जिनके मान सरल प्रकार हैं (तार, संख्याएं) मैं -Dpath.to.config.value=<value> का उपयोग करके ओवरराइड कर सकता हूं, और यह ठीक काम करता है। हालांकि, मुझे सूचियों के लिए ऐसा करने का कोई तरीका नहीं दिख रहा है। उपर्युक्त उदाहरण में, मैंने डेटासेंटर को ["एसजेसी", "आईएडी"] को सेट करने की कोशिश की: -Dpoller.datacenters="['SJC', 'IAD']", लेकिन मुझे एक अपवाद मिलता है कि मुख्य मान एक स्ट्रिंग है, सूची नहीं। टाइपएफ़ कॉन्फ़िगरेशन लाइब्रेरी को सिग्नल करने का कोई तरीका है कि यह मान एक सूची है?मैं कमांड लाइन पर टाइपएफ़ कॉन्फ़िगरेशन सूची मान को ओवरराइड कैसे कर सकता हूं?</p> <pre><code>poller { datacenters = [] } </code></pre> <p>मैं कमांड लाइन पर डेटासेंटर ओवरराइड करने के लिए करना चाहते हैं:

उत्तर

46

एक वैकल्पिक वाक्य रचना इस के लिए संस्करण 1.0.1 में कार्यान्वित किया जाता:

-Dpoller.datacenters.0=SJC -Dpoller.datacenters.1=IAD 
+0

देखें https://github.com/typesafehub/config/issues/69 पृष्ठभूमि के लिए –

3

मैं कुछ हफ्ते पहले ही मुद्दा था, और अंत में स्रोत कोड में डुबकी लगाई समझने के लिए क्या हो रहा है: लागू नहीं किया गया

  • यह सुविधा है, यह कमांड लाइन तर्क
  • का उपयोग कर एक सूची निर्धारित करना संभव नहीं है

इसे ठीक करना मुश्किल नहीं होगा, लेकिन किसी को ऐसा करने में समय लगाना होगा।

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

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