java/dictionary-generator/build.xml
author František Kučera <franta-hg@frantovo.cz>
Mon, 22 Jun 2020 21:59:38 +0200
changeset 151 a9f1ba451247
parent 13 a5d7afd1b93a
permissions -rw-r--r--
fix license version: GNU GPLv3, GNU FDLv1.3
franta-hg@13
     1
<?xml version="1.0" encoding="UTF-8"?>
franta-hg@13
     2
<!-- You may freely edit this file. See commented blocks below for -->
franta-hg@13
     3
<!-- some examples of how to customize the build. -->
franta-hg@13
     4
<!-- (If you delete it and reopen the project it will be recreated.) -->
franta-hg@13
     5
<!-- By default, only the Clean and Build commands use this build script. -->
franta-hg@13
     6
<!-- Commands such as Run, Debug, and Test only use this build script if -->
franta-hg@13
     7
<!-- the Compile on Save feature is turned off for the project. -->
franta-hg@13
     8
<!-- You can turn off the Compile on Save (or Deploy on Save) setting -->
franta-hg@13
     9
<!-- in the project's Project Properties dialog box.-->
franta-hg@13
    10
<project name="dictionary-generator" default="default" basedir=".">
franta-hg@13
    11
    <description>Builds, tests, and runs the project dictionary-generator.</description>
franta-hg@13
    12
    <import file="nbproject/build-impl.xml"/>
franta-hg@13
    13
    <!--
franta-hg@13
    14
franta-hg@13
    15
    There exist several targets which are by default empty and which can be 
franta-hg@13
    16
    used for execution of your tasks. These targets are usually executed 
franta-hg@13
    17
    before and after some main targets. They are: 
franta-hg@13
    18
franta-hg@13
    19
      -pre-init:                 called before initialization of project properties
franta-hg@13
    20
      -post-init:                called after initialization of project properties
franta-hg@13
    21
      -pre-compile:              called before javac compilation
franta-hg@13
    22
      -post-compile:             called after javac compilation
franta-hg@13
    23
      -pre-compile-single:       called before javac compilation of single file
franta-hg@13
    24
      -post-compile-single:      called after javac compilation of single file
franta-hg@13
    25
      -pre-compile-test:         called before javac compilation of JUnit tests
franta-hg@13
    26
      -post-compile-test:        called after javac compilation of JUnit tests
franta-hg@13
    27
      -pre-compile-test-single:  called before javac compilation of single JUnit test
franta-hg@13
    28
      -post-compile-test-single: called after javac compilation of single JUunit test
franta-hg@13
    29
      -pre-jar:                  called before JAR building
franta-hg@13
    30
      -post-jar:                 called after JAR building
franta-hg@13
    31
      -post-clean:               called after cleaning build products
franta-hg@13
    32
franta-hg@13
    33
    (Targets beginning with '-' are not intended to be called on their own.)
franta-hg@13
    34
franta-hg@13
    35
    Example of inserting an obfuscator after compilation could look like this:
franta-hg@13
    36
franta-hg@13
    37
        <target name="-post-compile">
franta-hg@13
    38
            <obfuscate>
franta-hg@13
    39
                <fileset dir="${build.classes.dir}"/>
franta-hg@13
    40
            </obfuscate>
franta-hg@13
    41
        </target>
franta-hg@13
    42
franta-hg@13
    43
    For list of available properties check the imported 
franta-hg@13
    44
    nbproject/build-impl.xml file. 
franta-hg@13
    45
franta-hg@13
    46
franta-hg@13
    47
    Another way to customize the build is by overriding existing main targets.
franta-hg@13
    48
    The targets of interest are: 
franta-hg@13
    49
franta-hg@13
    50
      -init-macrodef-javac:     defines macro for javac compilation
franta-hg@13
    51
      -init-macrodef-junit:     defines macro for junit execution
franta-hg@13
    52
      -init-macrodef-debug:     defines macro for class debugging
franta-hg@13
    53
      -init-macrodef-java:      defines macro for class execution
franta-hg@151
    54
      -do-jar:                  JAR building
franta-hg@13
    55
      run:                      execution of project 
franta-hg@13
    56
      -javadoc-build:           Javadoc generation
franta-hg@13
    57
      test-report:              JUnit report generation
franta-hg@13
    58
franta-hg@13
    59
    An example of overriding the target for project execution could look like this:
franta-hg@13
    60
franta-hg@13
    61
        <target name="run" depends="dictionary-generator-impl.jar">
franta-hg@13
    62
            <exec dir="bin" executable="launcher.exe">
franta-hg@13
    63
                <arg file="${dist.jar}"/>
franta-hg@13
    64
            </exec>
franta-hg@13
    65
        </target>
franta-hg@13
    66
franta-hg@13
    67
    Notice that the overridden target depends on the jar target and not only on 
franta-hg@13
    68
    the compile target as the regular run target does. Again, for a list of available 
franta-hg@13
    69
    properties which you can use, check the target you are overriding in the
franta-hg@13
    70
    nbproject/build-impl.xml file. 
franta-hg@13
    71
franta-hg@13
    72
    -->
franta-hg@13
    73
</project>