मैं NAnt के लिए नया हूँ और बनाने के लिए सक्षम किया गया है एक <target>
जोNAnt <msbuild> कस्टम उत्पादन निर्देशिका
1) वर्तमान फ़ोल्डर
2) से किसी भी कोड को हटाता है एक्सपोर्ट्स SVN
से ताजा कोड3) डिफ़ॉल्ट निर्देशिका में कोड जो PrecompiledWeb फ़ोल्डर है (इसकी एक वेब एप्लिकेशन) बनाता है
यहाँयह है:
<target name="export" description="export code from svn">
<delete dir="${Delete.Dir}"></delete>
<exec program="svn" commandline="export ${MySVN.Repos} ${MySVN.Dest}" />
<msbuild project="${Solution.Filename}">
<property name="Configuration" value="Release"/>
</msbuild>
</target>
मैं एक कस्टम आउटपुट निर्देशिका निर्दिष्ट करना चाहता हूं ("PrecompiledWeb" के अलावा)। क्या यह संभव है और क्या आप मुझे आवश्यक टैग/संपत्ति दिखा सकते हैं?
धन्यवाद!
संपादित
स्कॉट और सी के लिए धन्यवाद, मैं एक समाधान के करीब हो रही है, लेकिन मैं अभी भी कुछ भी है कि काम करता है नहीं है। वहां टिप्पणियों ने मुझे इस लेख को MSBuild's Output Path Property पर ले जाया। अपने कोड का उपयोग:
<?xml version="1.0"?>
<project name="test" default="build" basedir="." xmlns="http://nant.sf.net/schemas/nant-0.84.win32.net-1.0.xsd">
<target name="build">
<exec program="${framework::get-framework-directory('net-3.5')}/msbuild.exe">
<arg value="${Full.Path}\Code\MySolution.sln" />
<arg value="/p:OutputPath=${Full.Path}\Output\" />
</exec>
</target>
</project>
यह सफलतापूर्वक चलाएगा; हालांकि, मेरे समाधान में जिसमें एक वेब साइट और क्लास लाइब्रेरी है, यह क्लास लाइब्रेरी डीएल को निर्दिष्ट आउटपुट पथ पर प्रकाशित करता है, लेकिन यह अभी भी डिफ़ॉल्ट वेब साइट को डिफ़ॉल्ट प्रीकंपील्डवेब फ़ोल्डर में प्रकाशित करता है।
क्या किसी के पास NANT से PrecompiledWeb फ़ोल्डर पथ को बदलने के लिए कोई सुझाव है?
मदद की हर किसी के लिए धन्यवाद!
<exec program="${framework::get-framework-directory('net-4.0')}/msbuild.exe">
<arg value="${Full.Path}\Code\MySolution.sln" />
<arg value="/t:Rebuild" />
<arg value="/t:ResolveReferences" />
<arg value="/t:_CopyWebApplication" />
<arg value="/p:OutDir=${Build.Output}bin\" />
<arg value="/p:WebProjectOutputDir=${Build.Output}" />
<arg value="/p:Configuration=Release" />
</exec>
आप एक वेब तैनाती परियोजना का उपयोग करते हैं आप के लिए OutputPath परिभाषित कर सकते हैं पूरी वेबसाइट इसके अलावा, शायद आपको माइक्रोसॉफ्ट एमएसबिल्ड स्क्रिप्ट में प्रवेश करने की आवश्यकता होगी? – si618