2013-04-19 3 views
18

क्या ग्रेड में एक एएनटी समकक्ष आधारित संपत्ति है?ग्रैडल आधारित संपत्ति

${basedir} 

मैं निर्देशिका का नाम प्राप्त करने का प्रयास कर रहा हूं जहां बिल्ड स्क्रिप्ट स्थित है।

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

उत्तर

35

आपकी सटीक आवश्यकताओं के आधार पर, आप buildFile.parent या projectDir का उपयोग कर सकते हैं। (बिल्ड फ़ाइल पथ "$projectDir/build.gradle" पर डिफ़ॉल्ट है और settings.gradle में पुन: कॉन्फ़िगर किया जा सकता है।) Gradle Build Language Reference देखें जिसके लिए Project और अन्य कक्षाओं पर गुण और विधियां उपलब्ध हैं।

+2

धन्यवाद, मैंने पथ में अंतिम निर्देशिका नाम प्राप्त करने के लिए projectDir.getName() का उपयोग किया। –

+4

मेरी ज़रूरतों के लिए, मैं 'rootDir' की तलाश में था जो बहु-मॉड्यूल प्रोजेक्ट में मूल निर्देशिका है (' projectDir' मॉड्यूल के सापेक्ष है)। प्रोजेक्ट वैरिएबल के लिए एक और अच्छा संदर्भ [प्रोजेक्ट इंटरफेस के लिए ग्रैडल एपीआई] है (https://docs.gradle.org/current/javadoc/org/gradle/api/Project.html)। –

+0

हाँ यह मेरी आवश्यकताओं के अनुरूप है। अन्य सुझाव जो लोग आ रहे थे, वे काम नहीं करेंगे जब मैं 'gradle -p निर्दिष्ट BuildGradleFilePath' से भाग गया था –