Show
Ignore:
Timestamp:
09/27/10 19:04:50 (14 years ago)
Author:
František Kučera <franta-hg@…>
Branch:
default
Message:

Souborové dialogy si pamatují naposledy použitý adresář.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • java/Postak/nbproject/build-impl.xml

    r3 r5  
    2121        --> 
    2222<project xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" basedir=".." default="default" name="Postak-impl"> 
     23    <fail message="Please build using Ant 1.7.1 or higher."> 
     24        <condition> 
     25            <not> 
     26                <antversion atleast="1.7.1"/> 
     27            </not> 
     28        </condition> 
     29    </fail> 
    2330    <target depends="test,jar,javadoc" description="Build and test whole project." name="default"/> 
    2431    <!--  
     
    4956    <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property" name="-do-init"> 
    5057        <available file="${manifest.file}" property="manifest.available"/> 
    51         <condition property="manifest.available+main.class"> 
    52             <and> 
    53                 <isset property="manifest.available"/> 
     58        <available file="${application.splash}" property="splashscreen.available"/> 
     59        <condition property="main.class.available"> 
     60            <and> 
    5461                <isset property="main.class"/> 
    5562                <not> 
     
    5865            </and> 
    5966        </condition> 
     67        <condition property="manifest.available+main.class"> 
     68            <and> 
     69                <isset property="manifest.available"/> 
     70                <isset property="main.class.available"/> 
     71            </and> 
     72        </condition> 
     73        <condition property="do.mkdist"> 
     74            <and> 
     75                <isset property="libs.CopyLibs.classpath"/> 
     76                <not> 
     77                    <istrue value="${mkdist.disabled}"/> 
     78                </not> 
     79            </and> 
     80        </condition> 
    6081        <condition property="manifest.available+main.class+mkdist.available"> 
    6182            <and> 
    6283                <istrue value="${manifest.available+main.class}"/> 
    63                 <isset property="libs.CopyLibs.classpath"/> 
     84                <isset property="do.mkdist"/> 
     85            </and> 
     86        </condition> 
     87        <condition property="manifest.available+main.class+mkdist.available+splashscreen.available"> 
     88            <and> 
     89                <istrue value="${manifest.available+main.class+mkdist.available}"/> 
     90                <istrue value="${splashscreen.available}"/> 
     91            </and> 
     92        </condition> 
     93        <condition property="do.archive"> 
     94            <not> 
     95                <istrue value="${jar.archive.disabled}"/> 
     96            </not> 
     97        </condition> 
     98        <condition property="do.archive+manifest.available"> 
     99            <and> 
     100                <isset property="manifest.available"/> 
     101                <istrue value="${do.archive}"/> 
     102            </and> 
     103        </condition> 
     104        <condition property="do.archive+manifest.available+main.class"> 
     105            <and> 
     106                <istrue value="${manifest.available+main.class}"/> 
     107                <istrue value="${do.archive}"/> 
     108            </and> 
     109        </condition> 
     110        <condition property="do.archive+manifest.available+main.class+mkdist.available"> 
     111            <and> 
     112                <istrue value="${manifest.available+main.class+mkdist.available}"/> 
     113                <istrue value="${do.archive}"/> 
     114            </and> 
     115        </condition> 
     116        <condition property="do.archive+manifest.available+main.class+mkdist.available+splashscreen.available"> 
     117            <and> 
     118                <istrue value="${manifest.available+main.class+mkdist.available+splashscreen.available}"/> 
     119                <istrue value="${do.archive}"/> 
    64120            </and> 
    65121        </condition> 
     
    98154        <property name="application.args" value=""/> 
    99155        <property name="source.encoding" value="${file.encoding}"/> 
     156        <property name="runtime.encoding" value="${source.encoding}"/> 
    100157        <condition property="javadoc.encoding.used" value="${javadoc.encoding}"> 
    101158            <and> 
     
    113170            <istrue value="${do.depend}"/> 
    114171        </condition> 
    115         <condition else="" property="javac.compilerargs.jaxws" value="-Djava.endorsed.dirs='${jaxws.endorsed.dir}'"> 
    116             <and> 
    117                 <isset property="jaxws.endorsed.dir"/> 
    118                 <available file="nbproject/jaxws-build.xml"/> 
    119             </and> 
    120         </condition> 
     172        <path id="endorsed.classpath.path" path="${endorsed.classpath}"/> 
     173        <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'"> 
     174            <length length="0" string="${endorsed.classpath}" when="greater"/> 
     175        </condition> 
     176        <property name="javac.fork" value="false"/> 
     177        <property name="jar.index" value="false"/> 
     178        <available file="${meta.inf.dir}/persistence.xml" property="has.persistence.xml"/> 
    121179    </target> 
    122180    <target name="-post-init"> 
     
    145203        </macrodef> 
    146204    </target> 
    147     <target name="-init-macrodef-javac"> 
     205    <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors"> 
    148206        <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3"> 
    149207            <attribute default="${src.dir}" name="srcdir"/> 
    150208            <attribute default="${build.classes.dir}" name="destdir"/> 
    151209            <attribute default="${javac.classpath}" name="classpath"/> 
     210            <attribute default="${javac.processorpath}" name="processorpath"/> 
     211            <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/> 
    152212            <attribute default="${includes}" name="includes"/> 
    153213            <attribute default="${excludes}" name="excludes"/> 
    154214            <attribute default="${javac.debug}" name="debug"/> 
    155             <attribute default="/does/not/exist" name="sourcepath"/> 
     215            <attribute default="${empty.dir}" name="sourcepath"/> 
     216            <attribute default="${empty.dir}" name="gensrcdir"/> 
    156217            <element name="customize" optional="true"/> 
    157218            <sequential> 
    158                 <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}"> 
     219                <property location="${build.dir}/empty" name="empty.dir"/> 
     220                <mkdir dir="${empty.dir}"/> 
     221                <mkdir dir="@{apgeneratedsrcdir}"/> 
     222                <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}"> 
     223                    <src> 
     224                        <dirset dir="@{gensrcdir}" erroronmissingdir="false"> 
     225                            <include name="*"/> 
     226                        </dirset> 
     227                    </src> 
    159228                    <classpath> 
    160229                        <path path="@{classpath}"/> 
    161230                    </classpath> 
    162                     <compilerarg line="${javac.compilerargs} ${javac.compilerargs.jaxws}"/> 
     231                    <compilerarg line="${endorsed.classpath.cmd.line.arg}"/> 
     232                    <compilerarg line="${javac.compilerargs}"/> 
     233                    <compilerarg value="-processorpath"/> 
     234                    <compilerarg path="@{processorpath}:${empty.dir}"/> 
     235                    <compilerarg line="${ap.processors.internal}"/> 
     236                    <compilerarg line="${annotation.processing.processor.options}"/> 
     237                    <compilerarg value="-s"/> 
     238                    <compilerarg path="@{apgeneratedsrcdir}"/> 
     239                    <compilerarg line="${ap.proc.none.internal}"/> 
    163240                    <customize/> 
    164241                </javac> 
    165242            </sequential> 
    166243        </macrodef> 
     244    </target> 
     245    <target depends="-init-ap-cmdline-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal"> 
     246        <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3"> 
     247            <attribute default="${src.dir}" name="srcdir"/> 
     248            <attribute default="${build.classes.dir}" name="destdir"/> 
     249            <attribute default="${javac.classpath}" name="classpath"/> 
     250            <attribute default="${javac.processorpath}" name="processorpath"/> 
     251            <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/> 
     252            <attribute default="${includes}" name="includes"/> 
     253            <attribute default="${excludes}" name="excludes"/> 
     254            <attribute default="${javac.debug}" name="debug"/> 
     255            <attribute default="${empty.dir}" name="sourcepath"/> 
     256            <attribute default="${empty.dir}" name="gensrcdir"/> 
     257            <element name="customize" optional="true"/> 
     258            <sequential> 
     259                <property location="${build.dir}/empty" name="empty.dir"/> 
     260                <mkdir dir="${empty.dir}"/> 
     261                <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}"> 
     262                    <src> 
     263                        <dirset dir="@{gensrcdir}" erroronmissingdir="false"> 
     264                            <include name="*"/> 
     265                        </dirset> 
     266                    </src> 
     267                    <classpath> 
     268                        <path path="@{classpath}"/> 
     269                    </classpath> 
     270                    <compilerarg line="${endorsed.classpath.cmd.line.arg}"/> 
     271                    <compilerarg line="${javac.compilerargs}"/> 
     272                    <customize/> 
     273                </javac> 
     274            </sequential> 
     275        </macrodef> 
     276    </target> 
     277    <target depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac"> 
    167278        <macrodef name="depend" uri="http://www.netbeans.org/ns/j2se-project/3"> 
    168279            <attribute default="${src.dir}" name="srcdir"/> 
     
    199310            <attribute default="**" name="testincludes"/> 
    200311            <sequential> 
    201                 <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true"> 
     312                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${build.dir}"> 
    202313                    <batchtest todir="${build.test.results.dir}"> 
    203314                        <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}"> 
     
    214325                    <formatter type="brief" usefile="false"/> 
    215326                    <formatter type="xml"/> 
     327                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> 
    216328                    <jvmarg line="${run.jvmargs}"/> 
    217329                </junit> 
     
    270382            <sequential> 
    271383                <java classname="@{classname}" dir="${work.dir}" fork="true"> 
     384                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> 
    272385                    <jvmarg line="${debug-args-line}"/> 
    273386                    <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/> 
     387                    <jvmarg value="-Dfile.encoding=${runtime.encoding}"/> 
     388                    <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/> 
    274389                    <jvmarg line="${run.jvmargs}"/> 
    275390                    <classpath> 
     
    288403        <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1"> 
    289404            <attribute default="${main.class}" name="classname"/> 
     405            <attribute default="${run.classpath}" name="classpath"/> 
    290406            <element name="customize" optional="true"/> 
    291407            <sequential> 
    292408                <java classname="@{classname}" dir="${work.dir}" fork="true"> 
     409                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> 
     410                    <jvmarg value="-Dfile.encoding=${runtime.encoding}"/> 
     411                    <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/> 
    293412                    <jvmarg line="${run.jvmargs}"/> 
    294413                    <classpath> 
    295                         <path path="${run.classpath}"/> 
     414                        <path path="@{classpath}"/> 
    296415                    </classpath> 
    297416                    <syspropertyset> 
     
    304423        </macrodef> 
    305424    </target> 
     425    <target name="-init-macrodef-copylibs"> 
     426        <macrodef name="copylibs" uri="http://www.netbeans.org/ns/j2se-project/3"> 
     427            <element name="customize" optional="true"/> 
     428            <sequential> 
     429                <property location="${build.classes.dir}" name="build.classes.dir.resolved"/> 
     430                <pathconvert property="run.classpath.without.build.classes.dir"> 
     431                    <path path="${run.classpath}"/> 
     432                    <map from="${build.classes.dir.resolved}" to=""/> 
     433                </pathconvert> 
     434                <pathconvert pathsep=" " property="jar.classpath"> 
     435                    <path path="${run.classpath.without.build.classes.dir}"/> 
     436                    <chainedmapper> 
     437                        <flattenmapper/> 
     438                        <globmapper from="*" to="lib/*"/> 
     439                    </chainedmapper> 
     440                </pathconvert> 
     441                <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/> 
     442                <copylibs compress="${jar.compress}" index="${jar.index}" jarfile="${dist.jar}" manifest="${manifest.file}" runtimeclasspath="${run.classpath.without.build.classes.dir}"> 
     443                    <fileset dir="${build.classes.dir}"/> 
     444                    <manifest> 
     445                        <attribute name="Class-Path" value="${jar.classpath}"/> 
     446                        <customize/> 
     447                    </manifest> 
     448                </copylibs> 
     449            </sequential> 
     450        </macrodef> 
     451    </target> 
    306452    <target name="-init-presetdef-jar"> 
    307453        <presetdef name="jar" uri="http://www.netbeans.org/ns/j2se-project/1"> 
    308             <jar compress="${jar.compress}" jarfile="${dist.jar}"> 
     454            <jar compress="${jar.compress}" index="${jar.index}" jarfile="${dist.jar}"> 
    309455                <j2seproject1:fileset dir="${build.classes.dir}"/> 
    310456            </jar> 
    311457        </presetdef> 
    312458    </target> 
    313     <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init,-post-init,-init-check,-init-macrodef-property,-init-macrodef-javac,-init-macrodef-junit,-init-macrodef-nbjpda,-init-macrodef-debug,-init-macrodef-java,-init-presetdef-jar" name="init"/> 
     459    <target name="-init-ap-cmdline-properties"> 
     460        <property name="annotation.processing.enabled" value="true"/> 
     461        <property name="annotation.processing.processors.list" value=""/> 
     462        <property name="annotation.processing.processor.options" value=""/> 
     463        <property name="annotation.processing.run.all.processors" value="true"/> 
     464        <property name="javac.processorpath" value="${javac.classpath}"/> 
     465        <property name="javac.test.processorpath" value="${javac.test.classpath}"/> 
     466        <condition property="ap.supported.internal" value="true"> 
     467            <not> 
     468                <matches pattern="1\.[0-5](\..*)?" string="${javac.source}"/> 
     469            </not> 
     470        </condition> 
     471    </target> 
     472    <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-ap-cmdline-supported"> 
     473        <condition else="" property="ap.processors.internal" value="-processor ${annotation.processing.processors.list}"> 
     474            <isfalse value="${annotation.processing.run.all.processors}"/> 
     475        </condition> 
     476        <condition else="" property="ap.proc.none.internal" value="-proc:none"> 
     477            <isfalse value="${annotation.processing.enabled}"/> 
     478        </condition> 
     479    </target> 
     480    <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline"> 
     481        <property name="ap.cmd.line.internal" value=""/> 
     482    </target> 
     483    <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init,-post-init,-init-check,-init-macrodef-property,-init-macrodef-javac,-init-macrodef-junit,-init-macrodef-nbjpda,-init-macrodef-debug,-init-macrodef-java,-init-presetdef-jar,-init-ap-cmdline" name="init"/> 
    314484    <!-- 
    315485                =================== 
     
    317487                =================== 
    318488            --> 
    319     <target depends="init" name="deps-jar" unless="no.deps"/> 
     489    <target name="-deps-jar-init" unless="built-jar.properties"> 
     490        <property location="${build.dir}/built-jar.properties" name="built-jar.properties"/> 
     491        <delete file="${built-jar.properties}" quiet="true"/> 
     492    </target> 
     493    <target if="already.built.jar.${basedir}" name="-warn-already-built-jar"> 
     494        <echo level="warn" message="Cycle detected: Postak was already built"/> 
     495    </target> 
     496    <target depends="init,-deps-jar-init" name="deps-jar" unless="no.deps"> 
     497        <mkdir dir="${build.dir}"/> 
     498        <touch file="${built-jar.properties}" verbose="false"/> 
     499        <property file="${built-jar.properties}" prefix="already.built.jar."/> 
     500        <antcall target="-warn-already-built-jar"/> 
     501        <propertyfile file="${built-jar.properties}"> 
     502            <entry key="${basedir}" value=""/> 
     503        </propertyfile> 
     504    </target> 
    320505    <target depends="init,-check-automatic-build,-clean-after-automatic-build" name="-verify-automatic-build"/> 
    321506    <target depends="init" name="-check-automatic-build"> 
     
    333518    </target> 
    334519    <target if="do.depend.true" name="-compile-depend"> 
    335         <j2seproject3:depend/> 
    336     </target> 
    337     <target depends="init,deps-jar,-pre-pre-compile,-pre-compile,-compile-depend" if="have.sources" name="-do-compile"> 
    338         <j2seproject3:javac/> 
     520        <pathconvert property="build.generated.subdirs"> 
     521            <dirset dir="${build.generated.sources.dir}" erroronmissingdir="false"> 
     522                <include name="*"/> 
     523            </dirset> 
     524        </pathconvert> 
     525        <j2seproject3:depend srcdir="${src.dir}:${build.generated.subdirs}"/> 
     526    </target> 
     527    <target depends="init,deps-jar,-pre-pre-compile,-pre-compile, -copy-persistence-xml,-compile-depend" if="have.sources" name="-do-compile"> 
     528        <j2seproject3:javac gensrcdir="${build.generated.sources.dir}"/> 
    339529        <copy todir="${build.classes.dir}"> 
    340530            <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/> 
    341531        </copy> 
    342532    </target> 
     533    <target if="has.persistence.xml" name="-copy-persistence-xml"> 
     534        <mkdir dir="${build.classes.dir}/META-INF"/> 
     535        <copy todir="${build.classes.dir}/META-INF"> 
     536            <fileset dir="${meta.inf.dir}" includes="persistence.xml"/> 
     537        </copy> 
     538    </target> 
    343539    <target name="-post-compile"> 
    344540        <!-- Empty placeholder for easier customization. --> 
     
    353549        <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail> 
    354550        <j2seproject3:force-recompile/> 
    355         <j2seproject3:javac excludes="" includes="${javac.includes}" sourcepath="${src.dir}"/> 
     551        <j2seproject3:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}" sourcepath="${src.dir}"/> 
    356552    </target> 
    357553    <target name="-post-compile-single"> 
     
    373569        <!-- You can override this target in the ../build.xml file. --> 
    374570    </target> 
    375     <target depends="init,compile,-pre-pre-jar,-pre-jar" name="-do-jar-without-manifest" unless="manifest.available"> 
     571    <target depends="init,compile,-pre-pre-jar,-pre-jar" if="do.archive" name="-do-jar-without-manifest" unless="manifest.available"> 
    376572        <j2seproject1:jar/> 
    377573    </target> 
    378     <target depends="init,compile,-pre-pre-jar,-pre-jar" if="manifest.available" name="-do-jar-with-manifest" unless="manifest.available+main.class"> 
     574    <target depends="init,compile,-pre-pre-jar,-pre-jar" if="do.archive+manifest.available" name="-do-jar-with-manifest" unless="manifest.available+main.class"> 
    379575        <j2seproject1:jar manifest="${manifest.file}"/> 
    380576    </target> 
    381     <target depends="init,compile,-pre-pre-jar,-pre-jar" if="manifest.available+main.class" name="-do-jar-with-mainclass" unless="manifest.available+main.class+mkdist.available"> 
     577    <target depends="init,compile,-pre-pre-jar,-pre-jar" if="do.archive+manifest.available+main.class" name="-do-jar-with-mainclass" unless="manifest.available+main.class+mkdist.available"> 
    382578        <j2seproject1:jar manifest="${manifest.file}"> 
    383579            <j2seproject1:manifest> 
     
    394590        <echo>java -cp "${run.classpath.with.dist.jar}" ${main.class}</echo> 
    395591    </target> 
    396     <target depends="init,compile,-pre-pre-jar,-pre-jar" if="manifest.available+main.class+mkdist.available" name="-do-jar-with-libraries"> 
    397         <property location="${build.classes.dir}" name="build.classes.dir.resolved"/> 
    398         <pathconvert property="run.classpath.without.build.classes.dir"> 
    399             <path path="${run.classpath}"/> 
    400             <map from="${build.classes.dir.resolved}" to=""/> 
    401         </pathconvert> 
    402         <pathconvert pathsep=" " property="jar.classpath"> 
    403             <path path="${run.classpath.without.build.classes.dir}"/> 
    404             <chainedmapper> 
    405                 <flattenmapper/> 
    406                 <globmapper from="*" to="lib/*"/> 
    407             </chainedmapper> 
    408         </pathconvert> 
    409         <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/> 
    410         <copylibs compress="${jar.compress}" jarfile="${dist.jar}" manifest="${manifest.file}" runtimeclasspath="${run.classpath.without.build.classes.dir}"> 
    411             <fileset dir="${build.classes.dir}"/> 
    412             <manifest> 
     592    <target depends="init,compile,-pre-pre-jar,-pre-jar,-init-macrodef-copylibs" if="do.archive+manifest.available+main.class+mkdist.available+splashscreen.available" name="-do-jar-with-libraries-and-splashscreen"> 
     593        <basename file="${application.splash}" property="splashscreen.basename"/> 
     594        <mkdir dir="${build.classes.dir}/META-INF"/> 
     595        <copy failonerror="false" file="${application.splash}" todir="${build.classes.dir}/META-INF"/> 
     596        <j2seproject3:copylibs> 
     597            <customize> 
    413598                <attribute name="Main-Class" value="${main.class}"/> 
    414                 <attribute name="Class-Path" value="${jar.classpath}"/> 
    415             </manifest> 
    416         </copylibs> 
     599                <attribute name="SplashScreen-Image" value="META-INF/${splashscreen.basename}"/> 
     600            </customize> 
     601        </j2seproject3:copylibs> 
    417602        <echo>To run this application from the command line without Ant, try:</echo> 
    418603        <property location="${dist.jar}" name="dist.jar.resolved"/> 
    419604        <echo>java -jar "${dist.jar.resolved}"</echo> 
    420605    </target> 
     606    <target depends="init,compile,-pre-pre-jar,-pre-jar,-init-macrodef-copylibs" if="do.archive+manifest.available+main.class+mkdist.available" name="-do-jar-with-libraries" unless="splashscreen.available"> 
     607        <j2seproject3:copylibs> 
     608            <customize> 
     609                <attribute name="Main-Class" value="${main.class}"/> 
     610            </customize> 
     611        </j2seproject3:copylibs> 
     612        <echo>To run this application from the command line without Ant, try:</echo> 
     613        <property location="${dist.jar}" name="dist.jar.resolved"/> 
     614        <echo>java -jar "${dist.jar.resolved}"</echo> 
     615    </target> 
    421616    <target name="-post-jar"> 
    422617        <!-- Empty placeholder for easier customization. --> 
    423618        <!-- You can override this target in the ../build.xml file. --> 
    424619    </target> 
    425     <target depends="init,compile,-pre-jar,-do-jar-with-manifest,-do-jar-without-manifest,-do-jar-with-mainclass,-do-jar-with-libraries,-post-jar" description="Build JAR." name="jar"/> 
     620    <target depends="init,compile,-pre-jar,-do-jar-with-manifest,-do-jar-without-manifest,-do-jar-with-mainclass,-do-jar-with-libraries-and-splashscreen,-do-jar-with-libraries,-post-jar" description="Build JAR." name="jar"/> 
    426621    <!-- 
    427622                ================= 
     
    439634        <property name="javac.includes.binary" value=""/> 
    440635    </target> 
    441     <target depends="init,-do-not-recompile,compile-single" name="run-single"> 
     636    <target depends="init,compile-single" name="run-single"> 
    442637        <fail unless="run.class">Must select one file in the IDE or set run.class</fail> 
    443638        <j2seproject1:java classname="${run.class}"/> 
     639    </target> 
     640    <target depends="init,compile-test-single" name="run-test-with-main"> 
     641        <fail unless="run.class">Must select one file in the IDE or set run.class</fail> 
     642        <j2seproject1:java classname="${run.class}" classpath="${run.test.classpath}"/> 
    444643    </target> 
    445644    <!-- 
     
    450649    <target depends="init" if="netbeans.home" name="-debug-start-debugger"> 
    451650        <j2seproject1:nbjpdastart name="${debug.class}"/> 
     651    </target> 
     652    <target depends="init" if="netbeans.home" name="-debug-start-debugger-main-test"> 
     653        <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${debug.class}"/> 
    452654    </target> 
    453655    <target depends="init,compile" name="-debug-start-debuggee"> 
     
    467669        <j2seproject3:debug classname="${debug.class}"/> 
    468670    </target> 
    469     <target depends="init,-do-not-recompile,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single"/> 
     671    <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single"/> 
     672    <target depends="init,compile-test-single" if="netbeans.home" name="-debug-start-debuggee-main-test"> 
     673        <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail> 
     674        <j2seproject3:debug classname="${debug.class}" classpath="${debug.test.classpath}"/> 
     675    </target> 
     676    <target depends="init,compile-test-single,-debug-start-debugger-main-test,-debug-start-debuggee-main-test" if="netbeans.home" name="debug-test-with-main"/> 
    470677    <target depends="init" name="-pre-debug-fix"> 
    471678        <fail unless="fix.includes">Must set fix.includes</fail> 
     
    481688                =============== 
    482689            --> 
    483     <target depends="init" name="-javadoc-build"> 
     690    <target depends="init" if="have.sources" name="-javadoc-build"> 
    484691        <mkdir dir="${dist.javadoc.dir}"/> 
    485692        <javadoc additionalparam="${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}"> 
     
    490697                <filename name="**/*.java"/> 
    491698            </fileset> 
     699            <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false"> 
     700                <include name="**/*.java"/> 
     701            </fileset> 
    492702        </javadoc> 
     703        <copy todir="${dist.javadoc.dir}"> 
     704            <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}"> 
     705                <filename name="**/doc-files/**"/> 
     706            </fileset> 
     707            <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false"> 
     708                <include name="**/doc-files/**"/> 
     709            </fileset> 
     710        </copy> 
    493711    </target> 
    494712    <target depends="init,-javadoc-build" if="netbeans.home" name="-javadoc-browse" unless="no.javadoc.preview"> 
     
    512730    </target> 
    513731    <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend" if="have.tests" name="-do-compile-test"> 
    514         <j2seproject3:javac classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" srcdir="${test.src.dir}"/> 
     732        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" processorpath="${javac.test.processorpath}" srcdir="${test.src.dir}"/> 
    515733        <copy todir="${build.test.classes.dir}"> 
    516734            <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/> 
     
    529747        <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail> 
    530748        <j2seproject3:force-recompile destdir="${build.test.classes.dir}"/> 
    531         <j2seproject3:javac classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" sourcepath="${test.src.dir}" srcdir="${test.src.dir}"/> 
     749        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" processorpath="${javac.test.processorpath}" sourcepath="${test.src.dir}" srcdir="${test.src.dir}"/> 
    532750        <copy todir="${build.test.classes.dir}"> 
    533751            <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/> 
     
    551769    </target> 
    552770    <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run"> 
    553         <fail if="tests.failed">Some tests failed; see details above.</fail> 
     771        <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail> 
    554772    </target> 
    555773    <target depends="init" if="have.tests" name="test-report"/> 
     
    564782    </target> 
    565783    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single"> 
    566         <fail if="tests.failed">Some tests failed; see details above.</fail> 
    567     </target> 
    568     <target depends="init,-do-not-recompile,compile-test-single,-pre-test-run-single,-do-test-run-single,-post-test-run-single" description="Run single unit test." name="test-single"/> 
     784        <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail> 
     785    </target> 
     786    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single,-post-test-run-single" description="Run single unit test." name="test-single"/> 
    569787    <!-- 
    570788                ======================= 
     
    593811        <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/> 
    594812    </target> 
    595     <target depends="init,-do-not-recompile,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/> 
     813    <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/> 
    596814    <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test"> 
    597815        <j2seproject1:nbjpdareload dir="${build.test.classes.dir}"/> 
     
    630848                =============== 
    631849            --> 
    632     <target depends="init" name="deps-clean" unless="no.deps"/> 
     850    <target name="-deps-clean-init" unless="built-clean.properties"> 
     851        <property location="${build.dir}/built-clean.properties" name="built-clean.properties"/> 
     852        <delete file="${built-clean.properties}" quiet="true"/> 
     853    </target> 
     854    <target if="already.built.clean.${basedir}" name="-warn-already-built-clean"> 
     855        <echo level="warn" message="Cycle detected: Postak was already built"/> 
     856    </target> 
     857    <target depends="init,-deps-clean-init" name="deps-clean" unless="no.deps"> 
     858        <mkdir dir="${build.dir}"/> 
     859        <touch file="${built-clean.properties}" verbose="false"/> 
     860        <property file="${built-clean.properties}" prefix="already.built.clean."/> 
     861        <antcall target="-warn-already-built-clean"/> 
     862        <propertyfile file="${built-clean.properties}"> 
     863            <entry key="${basedir}" value=""/> 
     864        </propertyfile> 
     865    </target> 
    633866    <target depends="init" name="-do-clean"> 
    634867        <delete dir="${build.dir}"/> 
    635         <delete dir="${dist.dir}"/> 
     868        <delete dir="${dist.dir}" followsymlinks="false" includeemptydirs="true"/> 
    636869    </target> 
    637870    <target name="-post-clean"> 
     
    640873    </target> 
    641874    <target depends="init,deps-clean,-do-clean,-post-clean" description="Clean build products." name="clean"/> 
     875    <target name="-check-call-dep"> 
     876        <property file="${call.built.properties}" prefix="already.built."/> 
     877        <condition property="should.call.dep"> 
     878            <not> 
     879                <isset property="already.built.${call.subproject}"/> 
     880            </not> 
     881        </condition> 
     882    </target> 
     883    <target depends="-check-call-dep" if="should.call.dep" name="-maybe-call-dep"> 
     884        <ant antfile="${call.script}" inheritall="false" target="${call.target}"> 
     885            <propertyset> 
     886                <propertyref prefix="transfer."/> 
     887                <mapper from="transfer.*" to="*" type="glob"/> 
     888            </propertyset> 
     889        </ant> 
     890    </target> 
    642891</project>