2010-02-16 16 views
6

मुझे एक नेंट स्क्रिप्ट लिखनी है जो कमांड लाइन पर 2 पैरामीटर स्वीकार करेगी। पहला सिर्फ एक विकल्प है और इसमें निम्न प्रारूप है: -मोशन। दूसरे को उद्धरणों में लपेटने की जरूरत है: "अंतरिक्ष के साथ कुछ मूल्य"।मैं नेंट स्क्रिप्ट के लिए 2 पैरामीटर कैसे पास करूं?

उदा। -myOption "यह मान"

मैं नेंट के लिए नया हूं इसलिए मैं अब तक असफल रहा हूं और डीबग करने के लिए कमांड को आउटपुट करने का तरीका नहीं जानता।

<target name="Build" depends="SetupConfig"> 
<exec workingdir="${refactory.basedir}" program="${exe.name.mfg.factory}" basedir="${refactory.basedir}" commandline="-myOption:"> 
<arg>${refactory.clientconfig}</arg> 
</exec> 

मैं कमांड "कमांडलाइन" 'विशेषता का उपयोग कर बनाने के प्रयास कर रहा हूँ और आर्ग नेस्ट तत्व:

यह वही है मैं अब तक है। तर्क तत्व qoutes प्रदान करना माना जाता है।

क्या कुछ मुझे बता सकते हैं कि यह कैसे दिखना चाहिए? धन्यवाद।

उत्तर

2

इस प्रयास करें:

<target name="Build" depends="SetupConfig"> 
<exec workingdir="${refactory.basedir}" program="${exe.name.mfg.factory}" basedir="${refactory.basedir}"> 
    <arg value="-myOption" /> 
    <arg value="${refactory.clientconfig}" /> 
</exec> 

अधिक जानकारी दृश्य Nant Exec task documentation लिए।

+0

मूल्य = विशेषता जोड़ना एक अच्छा विचार है :) – Nick

29

मुझे कबूल करना होगा, अपने कोड स्निपेट को देखकर यह मुझे पूरी तरह स्पष्ट नहीं है, जिसे आप प्राप्त करने की कोशिश कर रहे हैं।

निम्नलिखित सामग्री के साथ एक NAnt स्क्रिप्ट example.project.build को देखते हुए:

<?xml version="1.0"?> 
<project name="example.project" default="example.target" basedir="."> 
    <target name="example.target"> 
    <echo message="${arg.option}" /> 
    <echo message="${arg.whitespace}" /> 
    </target> 
</project> 

वैसे भी, यह कैसे आप एक NAnt स्क्रिप्ट के दो तर्क पारित (क्या आप प्रश्न के शीर्षक के बारे में के लिए दावा कर रहे हैं) है

... आप

nant -buildfile:example.project.build -D:arg.option=foo -D:arg.whitespace="bar and bar" 

कहेंगे ... स्क्रिप्ट example.project.build निष्पादित और तर्क पारित करने के लिए arg.option और arg.whitespace इसे करने के लिए।

+0

यह स्वीकार्य उत्तर होना चाहिए। – J0e3gan

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