2012-06-29 18 views
5

के माध्यम से जावा के लिए तर्क पारित करें, मैं अपने जावा प्रोग्राम में कमांड लाइन तर्क पास करना चाहता हूं जो नकली चींटी के माध्यम से आक्रमण किया जाता है (हमारे पास पर्ल में हमारी अपनी चींटी स्क्रिप्ट है जो किसी बिंदु पर वास्तविक चींटी कहती है)। अभीएंटी

./ant program_name arg1 arg2

मैं अपने कार्यक्रम के लिए एक चींटी लक्ष्य है, लेकिन इसके बजाय कमांड लाइन से बहस में उत्तीर्ण होने की मैं कड़ी मेहनत कर रहा हूँ: तो मुझे क्या करना चाहते हैं तो इस तरह मेरे कार्यक्रम आह्वान है

<arg line="arg1 arg2"/>

ज पर कोई भी विचार: उन्हें इस तरह का निर्माण फाइल में कोडिंग क्या मैं बिल्ड फ़ाइल में चर का उपयोग कर सकता हूं और उन्हें कमांड लाइन तर्क से लोड कर सकता हूं और फिर उन्हें अपने जावा प्रोग्राम में उपयोग कर सकता हूं?

उत्तर

4

आपकी स्क्रिप्ट को -D के माध्यम से सिस्टम स्क्रिप्ट में बदलना सबसे आसान हो सकता है।

आपका चींटी निर्माण फ़ाइल तो, चींटी गुण है कि (<arg> टैग में सेट किया जा सकता है या सीधे संदर्भित सेट करने के लिए हालांकि मेरी प्राथमिकता चींटी गुण सेट होगा उन का उपयोग कर सकते हैं, लेकिन वह किसी के लिए की तुलना में आदत से बाहर अधिक हो सकता है तकनीकी कारण)।

+0

मुझे चींटी के बारे में बहुत कुछ पता नहीं है। लेकिन हमारे पास मौजूद चींटी स्क्रिप्ट असली चींटी को इस तरह से कुछ कह रही है: मेरी $ cmdline = "$ ENV {JAVA_HOME}/bin/java -Xmx512m -Djava.ext.dirs = \" $ ENV {EXT_DIRS} \ "- Dant.home = $ ENV {ANT_HOME} org.apache.tools.ant.Main -emacs $ inp "; जहां $ inp पूरे आदेश है जिसे हम कमांड लाइन पर देते हैं। क्या आप इसके बारे में बात कर रहे थे? – comatose

+0

@comatose शायद। मेरा दृष्टिकोण '$ inp' को विभाजित करना था और प्रत्येक को '-D' पैरामीटर' में बदलना था। मुझे यकीन नहीं है कि बिल्ड फ़ाइल में कमांड लाइन पैराम का उपयोग कैसे करें, हालांकि यदि आपने चींटी मैनुअल के साथ कुछ समय बिताया है तो यह वास्तव में आसान हो सकता है - मैंने इसे कभी नहीं किया है। –