преобразовать скрипт ant в скрипт gradle

Как преобразовать сценарий ant в сценарий gradle? Здравствуй, Не могли бы вы помочь мне преобразовать скрипт ant в скрипт Gradle. Я новый пользователь gradle.

<property name="pm-dir"                value="${PM-DIR}/${BUILD_NUM}" />
<property name="leis-dir"              value="${LEIS_DIR}/${BUILD_NUM}" />

<property name="proxy-name"             value="${PROXY_JAR_NAME}"/>
<property name="proxy-client-name"      value="${PROXY_CLIENT_JAR_NAME}"/>

<property environment="env"/>
<property name="java-home"              value="${env.JAVA_HOME}"/>

  <condition property="build-pm">
    <equals arg1="True" arg2="${BUILD_PM}" />
</condition>

<condition property="build-LEIS">
    <equals arg1="True" arg2="${BUILD_LEIS}" />
</condition>


<target name="build-LEIS-components" if="build-LEIS">

    <ant antfile="build.xml"
         target="clean"
         dir="${leis-dir}/LEIS"
         inheritAll="false"/>
    <ant antfile="build.xml"
         target="ejbdoclet"
         dir="${leis-dir}/LEIS/BusinessServices"
         inheritAll="false"/>
    <ant antfile="build.xml"
         target="jar"
         dir="${leis-dir}/LEIS"
         inheritAll="false"/>

    <ant antfile="build.xml"
         target="clean"
         dir="${leis-dir}/ETS/trunk/Entitlements"
         inheritAll="false"/>
    <ant antfile="build.xml"
         target="build"
         dir="${leis-dir}/ETS/trunk/Entitlements"
         inheritAll="false"/>

    <mkdir dir="${leis-dir}/JARS/APP-INF/lib/"/>

    <jar jarfile="${leis-dir}/JARS/APP-INF/lib/LEISConfig.jar">
        <fileset dir="LEIS/" includes="datetime.properties"/>
        <fileset dir="LEIS/" includes="log4j.properties"/>
        <manifest>
            <attribute name="Built-By" value="${user.name}"/>
        </manifest>
    </jar>
</target>


<!--========================================================================
Builds pm using the supplied RE build files, modified by us.
========================================================================-->
<target name="build-pm" if="build-pm">




    <!-- SPPResourceBundle Overrides -->
    <mkdir dir="${pm-dir}/pm2/deploy/propertyoverrides"/>
    <copy todir="${pm-dir}/pm2/deploy/propertyoverrides" overwrite="true">
        <fileset dir="olwpmconfig/propertyoverrides"/>
    </copy>

    <!-- copy build.properties into pm dir, complete with kodo key -->
    <copy file="olwpmconfig/build.properties"      todir="${pm-dir}/pm2/"            overwrite="true">
        <filterchain>         
               <replacetokens>
                   <token key="LOGGINGFLOOR" value="${PERFORMANCE_LOGGING_FLOOR}"/>
                   <token key="BEADIR" value="${BEA_HOME}"/>
               </replacetokens>
        </filterchain>
    </copy>

    <!--the actual Retail Express build scripts to create the pm-main.ear-->
    <echo message="Calling pm Build Script"/>
    <ant antfile='${pm-dir}/pm2/build/build.xml'          target='clean-build' inheritAll="false"/>

    <!--delete the extra copy of jdo.dtd-->
    <delete file="jdo.dtd" />

    <fileset id="required-pm-client-libs" dir="${pm-dir}/pm2/deploy/lib">
        <include name="*.jar"/>
        <include name="client/*.jar"/>
        <exclude name="*tests.jar"/>
    </fileset>

    <!-- Used to populate value of MANIFEST.MF Class-path attribute. Turns our set of "required" libs
     into a nice space separated string to place in the MANIFEST.MF. Property is used in the "dist"
     task's jar command. -->
    <pathconvert property="client-classpath"
                 refid="required-pm-client-libs"
                 pathsep=" "
                 dirsep="/">
        <map from="${pm-dir}/pm2/deploy/lib/" to=""/>
    </pathconvert>

    <jar update="true" jarfile="${pm-dir}/pm2/deploy/lib/pm-core.jar">
        <manifest>
            <attribute name="Class-Path" value="${client-classpath}"/>
            <attribute name="Main-Class" value="com.retailexp.pm.ui.util.SPPClientStartUp"/>
        </manifest>
    </jar>

    <!-- Creates a file Marimba/BigFix/WhatEver can use to track the version of pm installed on a machine -->
    <echo message="${pm_MAJOR_VERSION}.${BUILD_NUM}" file="${pm-dir}/pm2/deploy/lib/version.txt" append="false"/>

    <!-- Remove files we place on classpath from ears, Mantis 10624 -->
    <!-- pm -->
    <move file="${pm-dir}/pm2/deploy/dist/pm-main.ear" tofile="${pm-dir}/pm2/deploy/dist/old-pm-main.ear"/>
    <unzip src="${pm-dir}/pm2/deploy/dist/old-pm-main.ear" dest="${pm-dir}/pm2/deploy/dist/">
        <patternset>
            <include name="lib/pm-server-conf.jar"/>
        </patternset>
    </unzip>
    <move file="${pm-dir}/pm2/deploy/dist/lib/pm-server-conf.jar" tofile="${pm-dir}/pm2/deploy/dist/lib/old-pm-server-conf.jar"/>
    <zip file="${pm-dir}/pm2/deploy/dist/lib/pm-server-conf.jar">
        <zipfileset src="${pm-dir}/pm2/deploy/dist/lib/old-pm-server-conf.jar">
            <exclude name="log4j.properties"/>
            <exclude name="ehcache-transactional.xml"/>
        </zipfileset>
    </zip>
    <zip file="${pm-dir}/pm2/deploy/dist/pm-main.ear">
        <zipfileset src="${pm-dir}/pm2/deploy/dist/old-pm-main.ear">
            <exclude name="lib/pm-server-conf.jar"/>
        </zipfileset>
        <zipfileset dir="${pm-dir}/pm2/deploy/dist/lib/" includes="pm-server-conf.jar" fullpath="lib/pm-server-conf.jar"/>
    </zip>
    <!-- EDM -->
    <move file="${pm-dir}/pm2/deploy/dist/pm-edm.ear" tofile="${pm-dir}/pm2/deploy/dist/old-pm-edm.ear"/>
    <unzip src="${pm-dir}/pm2/deploy/dist/old-pm-edm.ear" dest="${pm-dir}/pm2/deploy/dist/">
        <patternset>
            <include name="lib/pm-server-conf.jar"/>
        </patternset>
    </unzip>
    <move file="${pm-dir}/pm2/deploy/dist/lib/pm-server-conf.jar" tofile="${pm-dir}/pm2/deploy/dist/lib/old-pm-server-conf.jar"/>
    <zip file="${pm-dir}/pm2/deploy/dist/lib/pm-server-conf.jar">
        <zipfileset src="${pm-dir}/pm2/deploy/dist/lib/old-pm-server-conf.jar">
            <exclude name="log4j.properties"/>
        </zipfileset>
    </zip>
    <zip file="${pm-dir}/pm2/deploy/dist/pm-edm.ear">
        <zipfileset src="${pm-dir}/pm2/deploy/dist/old-pm-edm.ear">
            <exclude name="lib/pm-server-conf.jar"/>
        </zipfileset>
        <zipfileset dir="${pm-dir}/pm2/deploy/dist/lib/" includes="pm-server-conf.jar" fullpath="lib/pm-server-conf.jar"/>
    </zip>
</target>

<!--========================================================================
Builds LEIS
========================================================================-->
<target name="build-proxy" if="build-LEIS">

    <!--copy deploy.properties with the proper jar names and locations-->
    <copy file="LEIS/deploy.properties"        todir="${leis-dir}/proxy/config/build/"    overwrite="true">
        <filterchain>
               <replacetokens>
                    <token key="pmCORE"            value="${pm_CORE_NAME}"/>
                    <token key="pmTRANSFER"        value="${pm_TRANSFER_NAME}"/>
                    <token key="PROXYJARNAME"       value="${PROXY_JAR_NAME}"/>
                    <token key="PROXYCLIENTJARNAME" value="${PROXY_CLIENT_JAR_NAME}"/>
                    <token key="PROXYLIBSDIR"       value="${leis-dir}/JARS/"/>
               </replacetokens>
        </filterchain>
    </copy>

     <ant antfile="build.xml" target="clean" dir="${leis-dir}/proxy" inheritAll="false" />
    <ant antfile="build.xml" target="prod-dist" dir="${leis-dir}/proxy" inheritAll="false">
        <property name="build.name" value="${pm_MAJOR_VERSION}.${BUILD_NUM}"/>
    </ant>

     <ear destfile="${ear-name}" appxml="LEIS/application.xml">
        <metainf dir="${leis-dir}/LEIS/conf/EAR/META-INF" includes="weblogic-application.xml"/>
        <fileset dir="${leis-dir}/JARS/"                   includes="*.jar"/>
        <fileset dir="${leis-dir}/JARS/"                   includes="APP-INF/**" excludes="APP-INF/lib/wlfullclient.jar"/>
    </ear>

    <!-- Place the proxy-client jar in the pm ear-->
    <zip update="true" destfile="${pm-dir}/pm2/deploy/dist/pm-main.ear">
        <zipfileset dir="${leis-dir}/proxy/dist/" includes="${proxy-client-name}" fullpath="APP-INF/lib/${proxy-client-name}"/>
    </zip>

</target>

<target name="build-cpc">
    <copy file="${pm-dir}/pm2/deploy/lib/${pm_TRANSFER_NAME}" todir="${leis-dir}/cpc-web-app/webapp/lib/cpc"/>
    <ant antfile="build.xml" target="build-all-environments" dir="${leis-dir}/cpc-web-app/webapp" inheritAll="false"/>
</target>

<target name="build-all">
    <antcall target="build-LEIS-components"/>
    <antcall target="build-pm"/>
    <antcall target="build-proxy"/>
    <antcall target="build-cpc"/>
</target>    </condition>

<condition property="build-LEIS">
    <equals arg1="True" arg2="${BUILD_LEIS}" />
</condition>


<target name="build-LEIS-components" if="build-LEIS">

    <!--Go through and build the LEIS modules-->
    <ant antfile="build.xml"
         target="clean"
         dir="${leis-dir}/LEIS"
         inheritAll="false"/>
    <ant antfile="build.xml"
         target="ejbdoclet"
         dir="${leis-dir}/LEIS/BusinessServices"
         inheritAll="false"/>
    <ant antfile="build.xml"
         target="jar"
         dir="${leis-dir}/LEIS"
         inheritAll="false"/>



    <ant antfile="build.xml"
         target="clean"
         dir="${leis-dir}/ETS/trunk/Entitlements"
         inheritAll="false"/>
    <ant antfile="build.xml"
         target="build"
         dir="${leis-dir}/ETS/trunk/Entitlements"
         inheritAll="false"/>


    <mkdir dir="${leis-dir}/JARS/APP-INF/lib/"/>


    <jar jarfile="${leis-dir}/JARS/APP-INF/lib/LEISConfig.jar">
        <fileset dir="LEIS/" includes="datetime.properties"/>
        <fileset dir="LEIS/" includes="log4j.properties"/>
        <manifest>
            <attribute name="Built-By" value="${user.name}"/>
        </manifest>
    </jar>
</target>


<target name="build-pm" if="build-pm">



    <mkdir dir="${pm-dir}/amp2/deploy/propertyoverrides"/>
    <copy todir="${pm-dir}/amp2/deploy/propertyoverrides" overwrite="true">
        <fileset dir="olwAMPconfig/propertyoverrides"/>
    </copy>

    <ant antfile='${pm-dir}/amp2/build/build.xml'          target='clean-build' inheritAll="false"/>

    <!--delete the extra copy of jdo.dtd-->
    <delete file="jdo.dtd" />

    <fileset id="required-amp-client-libs" dir="${pm-dir}/amp2/deploy/lib">
        <include name="*.jar"/>
        <include name="client/*.jar"/>
        <exclude name="*tests.jar"/>
    </fileset>

    <!-- Used to populate value of MANIFEST.MF Class-path attribute. Turns our set of "required" libs
     into a nice space separated string to place in the MANIFEST.MF. Property is used in the "dist"
     task's jar command. -->
    <pathconvert property="client-classpath"
                 refid="required-amp-client-libs"
                 pathsep=" "
                 dirsep="/">
        <map from="${pm-dir}/amp2/deploy/lib/" to=""/>
    </pathconvert>

    <jar update="true" jarfile="${pm-dir}/amp2/deploy/lib/amp-core.jar">
        <manifest>
            <attribute name="Class-Path" value="${client-classpath}"/>
            <attribute name="Main-Class" value="com.retailexp.amp.ui.util.SPPClientStartUp"/>
        </manifest>
    </jar>

    <!-- Creates a file Marimba/BigFix/WhatEver can use to track the version of AMP installed on a machine -->
    <echo message="${AMP_MAJOR_VERSION}.${BUILD_NUM}" file="${pm-dir}/amp2/deploy/lib/version.txt" append="false"/>

    <!-- Remove files we place on classpath from ears, Mantis 10624 -->
    <!-- AMP -->
    <move file="${pm-dir}/amp2/deploy/dist/amp-main.ear" tofile="${pm-dir}/amp2/deploy/dist/old-amp-main.ear"/>
    <unzip src="${pm-dir}/amp2/deploy/dist/old-amp-main.ear" dest="${pm-dir}/amp2/deploy/dist/">
        <patternset>
            <include name="lib/amp-server-conf.jar"/>
        </patternset>
    </unzip>
    <move file="${pm-dir}/amp2/deploy/dist/lib/amp-server-conf.jar" tofile="${pm-dir}/amp2/deploy/dist/lib/old-amp-server-conf.jar"/>
    <zip file="${pm-dir}/amp2/deploy/dist/lib/amp-server-conf.jar">
        <zipfileset src="${pm-dir}/amp2/deploy/dist/lib/old-amp-server-conf.jar">
            <exclude name="log4j.properties"/>
            <exclude name="ehcache-transactional.xml"/>
        </zipfileset>
    </zip>
    <zip file="${pm-dir}/amp2/deploy/dist/amp-main.ear">
        <zipfileset src="${pm-dir}/amp2/deploy/dist/old-amp-main.ear">
            <exclude name="lib/amp-server-conf.jar"/>
        </zipfileset>
        <zipfileset dir="${pm-dir}/amp2/deploy/dist/lib/" includes="amp-server-conf.jar" fullpath="lib/amp-server-conf.jar"/>
    </zip>
    <!-- EDM -->
    <move file="${pm-dir}/amp2/deploy/dist/amp-edm.ear" tofile="${pm-dir}/amp2/deploy/dist/old-amp-edm.ear"/>
    <unzip src="${pm-dir}/amp2/deploy/dist/old-amp-edm.ear" dest="${pm-dir}/amp2/deploy/dist/">
        <patternset>
            <include name="lib/amp-server-conf.jar"/>
        </patternset>
    </unzip>
    <move file="${pm-dir}/amp2/deploy/dist/lib/amp-server-conf.jar" tofile="${pm-dir}/amp2/deploy/dist/lib/old-amp-server-conf.jar"/>
    <zip file="${pm-dir}/amp2/deploy/dist/lib/amp-server-conf.jar">
        <zipfileset src="${pm-dir}/amp2/deploy/dist/lib/old-amp-server-conf.jar">
            <exclude name="log4j.properties"/>
        </zipfileset>
    </zip>
    <zip file="${pm-dir}/amp2/deploy/dist/amp-edm.ear">
        <zipfileset src="${pm-dir}/amp2/deploy/dist/old-amp-edm.ear">
            <exclude name="lib/amp-server-conf.jar"/>
        </zipfileset>
        <zipfileset dir="${pm-dir}/amp2/deploy/dist/lib/" includes="amp-server-conf.jar" fullpath="lib/amp-server-conf.jar"/>
    </zip>
</target>

<!--===============  Builds LEIS   ========================================================================-->
<target name="build-proxy" if="build-LEIS">


    <ant antfile="build.xml" target="clean" dir="${leis-dir}/proxy" inheritAll="false" />
    <ant antfile="build.xml" target="prod-dist" dir="${leis-dir}/proxy" inheritAll="false">
        <property name="build.name" value="${AMP_MAJOR_VERSION}.${BUILD_NUM}"/>
    </ant>

    <!--copy the proxy jar to the LEIS jars library-->
    <copy todir="${leis-dir}/JARS" flatten="true">
        <fileset dir="${leis-dir}/proxy/dist/" >
            <include name="${proxy-name}"/>
        </fileset>
    </copy>

    <!--create a directory to hold the LEIS ear contents-->
    <property name="ear.dir"            value="${leis-dir}/bin"/>
    <property name="ear-name"           value="${ear.dir}/LEIS_AMP.ear"/>
    <mkdir dir="${ear.dir}"/>

    <!--create the ear from the directories contents-->
    <ear destfile="${ear-name}" appxml="LEIS/application.xml">
        <metainf dir="${leis-dir}/LEIS/conf/EAR/META-INF" includes="weblogic-application.xml"/>
        <fileset dir="${leis-dir}/JARS/"                   includes="*.jar"/>
        <fileset dir="${leis-dir}/JARS/"                   includes="APP-INF/**" excludes="APP-INF/lib/wlfullclient.jar"/>
    </ear>

    <!-- Place the proxy-client jar in the amp ear-->
    <zip update="true" destfile="${pm-dir}/amp2/deploy/dist/amp-main.ear">
        <zipfileset dir="${leis-dir}/proxy/dist/" includes="${proxy-client-name}" fullpath="APP-INF/lib/${proxy-client-name}"/>
    </zip>

</target>

<target name="build-cpc">
    <copy file="${pm-dir}/amp2/deploy/lib/${AMP_TRANSFER_NAME}" todir="${leis-dir}/cpc-web-app/webapp/lib/cpc"/>
    <ant antfile="build.xml" target="build-all-environments" dir="${leis-dir}/cpc-web-app/webapp" inheritAll="false"/>
</target>

<!--=========================================    Build AMP and LEIS  --!>

<target name="build-all">
    <antcall target="build-LEIS-components"/>
    <antcall target="build-pm"/>
    <antcall target="build-proxy"/>
    <antcall target="build-cpc"/>
</target>

14
задан Burt Beckwith 13 June 2011 в 04:38
поделиться