मैं अपने प्रोजेक्ट है, जो एक स्क्रिप्ट है कि निशान भी शामिल है में RequireJS उपयोग कर रहा हूँ मॉड्यूल के बीच निर्भरता, और उन्हें एक ही जावास्क्रिप्ट फ़ाइल में जोड़ती है। वैकल्पिक रूप से, यह संयुक्त क्लोजर कंपाइलर के साथ संयुक्त जेएस फ़ाइल को भी कम कर सकता है। एक बार यह इस रूप में है, जहां सभी निर्भरताओं को एक जेएस फ़ाइल में शामिल किया गया है, फ़ाइल को आसानी से जेएससी का उपयोग करके संकलित किया जा सकता है।
<target name="compile-single-js">
<mkdir dir="${build-js}"/>
<java classname="org.mozilla.javascript.tools.shell.Main">
<classpath>
<path refid="rhino-classpath"/>
<path refid="closure-classpath"/>
</classpath>
<arg value="${js-build-script}"/>
<arg value="${js-build-dir}"/>
<arg value="name=${build-js-main-rhino-frontend-module}"/>
<arg value="out=${build-js-main}"/>
<arg value="baseUrl=."/>
<arg value="includeRequire=true"/>
<arg value="inlineText=true"/>
<arg value="optimize=none"/>
</java>
</target>
<target name="compile-single-class" depends="compile-single-js">
<mkdir dir="${build-class}"/>
<!-- TODO: set -opt -->
<java classname="org.mozilla.javascript.tools.jsc.Main">
<classpath>
<path refid="rhino-classpath"/>
</classpath>
<arg value="-o"/>
<arg value="${build-class-main-name}.class"/>
<arg value="${build-js-main}"/>
</java>
<move file="${build-js}/${build-class-main-name}.class" todir="${build-class}"/>
</target>
<target name="jar-single-class" depends="compile-single-class">
<mkdir dir="${build-jar}"/>
<jar destfile="${build-jar-main}"
basedir="${build-class}"
includes="${build-class-main-name}.class">
<manifest>
<attribute name="Main-Class" value="${build-class-main-name}" />
</manifest>
</jar>
</target>
पूरा निर्माण स्क्रिप्ट पाया जा सकता है:
यहाँ मेरी चींटी स्क्रिप्ट का एक खंड जो मैं, एक संयुक्त js फ़ाइल बनाने के एक वर्ग फाइल करने के लिए यह संकलन, और फिर एक निष्पादन योग्य जार बनाने के लिए उपयोग है here।
हम्म, मुख्य चिंता जावा और जावास्क्रिप्ट कक्षाओं के बीच निर्भरताओं को संभालने में है। फिर भी, यह अभी काम करने के लिए पर्याप्त हो सकता है - धन्यवाद। –