2013-05-25 12 views
6

क्या फ़िंग विज्ञापन-कार्य कार्य से वापसी मूल्य प्राप्त करने का कोई तरीका है?फ़िंग विज्ञापन-कार्य कार्य से मूल्य कैसे वापस करें?

<target name="get-app-version"> 

    <adhoc-task name="appversion" ><![CDATA[ 
     class AppversionTask extends Task { 

      private $version; 

      public function getVersion() { 
       return $this->version; 
      } 
      function main() { 
       $manifest = file_get_contents("manifest.json"); 
       $manifest_json = json_decode($manifest); 
       $version = $manifest_json->version; 
       $this->log("App version: " . $version); 
       $this->version = $version; 
      } 
     } 
    ]]></adhoc-task> 
    <appversion output="version" /> 
    <echo message="${version}" /> 

</target> 

मैं केवल मूल्य निर्धारित है, लेकिन मूल्यों नहीं मिल रहा है पर प्रलेखन पा सकते हैं:

उदाहरण के लिए, मैं इस प्रकार एक फ़ाइल में JSON स्ट्रिंग से संस्करण संख्या प्राप्त करने के लिए कोशिश कर रहा हूँ। हालांकि, adhoc typdef taskको सिंटैक्स दिखाता है, इसलिए मुझे आश्चर्य है कि ऐसा करने का कोई तरीका है या नहीं।

उत्तर

12

मुझे यकीन नहीं है कि मैं पूरी तरह से समझता हूं। यह की तरह लगता है, बल्कि

$this->version

की स्थापना की तुलना में आप के बजाय

$this->project->setProperty('version', $version);

यह बुलाना चाहिए अपनी परियोजना उदाहरण के लिए 'संस्करण' संपत्ति जोड़ देगा। आपको अपने कार्य के लिए विशेषता सेट करने की आवश्यकता नहीं होगी, जब तक कि कहें, आप बाद में बदलना चाहेंगे कि आपके प्रोजेक्ट में कौन सा प्रॉपर्टी नाम सेट हो जाता है ('संस्करण' से कुछ अन्य संपत्ति तक)।

`

<adhoc-task name="appversion" ><![CDATA[ 
    class AppversionTask extends Task { 

     function main() { 
      $manifest = file_get_contents("manifest.json"); 
      $manifest_json = json_decode($manifest); 
      $version = $manifest_json->version; 
      $this->log("App version: " . $version); 
      $this->project->setProperty('version', $version); 
     } 
    } 
]]></adhoc-task> 
<appversion /> 
<!-- The version property should now be set --> 
<echo message="${version}" /> 

`

+1

वाह ... मैं सब कुछ खत्म हो खोज की है और नहीं मिल सकता है -> परियोजना किसी भी दस्तावेज में भाग। यही वही है जो मैं ढूंढ रहा था। – jloosli

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