samples/componentinjection/anagram-modular/build.xml
author Jaroslav Tulach <jtulach@netbeans.org>
Wed, 26 Jan 2011 07:24:42 -0800
changeset 367 682a73927c58
parent 352 6c968e7b5a3f
child 409 40cabcdcd2be
permissions -rw-r--r--
Use proper classpath for runtime, so the various anagram versions really show their UI
jtulach@215
     1
<?xml version="1.0" encoding="UTF-8"?>
jtulach@336
     2
<project name="Various Examples of Component Injection" default="test" basedir=".">
jtulach@352
     3
    <property name="spring.jar" value="spring-2.5.6.SEC01.jar"/>
jtulach@215
     4
    <target name="clean">
jtulach@215
     5
        <delete dir="build"/>
jtulach@215
     6
    </target>
jtulach@215
     7
    
jtulach@215
     8
    <target name="compile" depends="build"/>
jtulach@215
     9
    <target name="build" depends="-libraries">
jtulach@215
    10
        <antcall target="-build-one">
jtulach@215
    11
            <param name="version" value="api"/>
jtulach@219
    12
            <param name="cp" value=""/>
jtulach@219
    13
        </antcall>
jtulach@219
    14
        <antcall target="-build-one">
jtulach@336
    15
            <param name="version" value="api-compiletimecaches"/>
jtulach@367
    16
            <param name="cp" value="build/api/classes:../../libs/dist/org-openide-util-lookup.jar:../../libs/dist/org-openide-util.jar:../../libs/dist/org-openide-filesystems.jar"/>
jtulach@336
    17
        </antcall>
jtulach@336
    18
        <antcall target="-build-one">
jtulach@336
    19
            <param name="version" value="word-annotated"/>
jtulach@340
    20
            <param name="cp" value="build/api/classes:build/api-compiletimecaches/classes:../../libs/dist/org-openide-util.jar:../../libs/dist/org-openide-util-lookup.jar:../../libs/dist/org-openide-filesystems.jar"/>
jtulach@336
    21
        </antcall>
jtulach@336
    22
        <antcall target="-build-one">
jtulach@219
    23
            <param name="version" value="word-static"/>
jtulach@219
    24
        </antcall>
jtulach@219
    25
        <antcall target="-build-one">
jtulach@219
    26
            <param name="version" value="scrambler-simple"/>
jtulach@219
    27
        </antcall>
jtulach@219
    28
        <antcall target="-build-one">
jtulach@219
    29
            <param name="version" value="gui"/>
jtulach@219
    30
        </antcall>
jtulach@219
    31
        <antcall target="-build-one">
jtulach@219
    32
            <param name="version" value="app-register"/>
jtulach@219
    33
            <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes"/>
jtulach@215
    34
        </antcall>
jtulach@221
    35
        <antcall target="-build-one">
jtulach@228
    36
            <param name="version" value="app-register-general"/>
jtulach@228
    37
            <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes"/>
jtulach@228
    38
        </antcall>
jtulach@228
    39
        <antcall target="-build-one">
jtulach@221
    40
            <param name="version" value="app-property"/>
jtulach@221
    41
            <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes"/>
jtulach@221
    42
        </antcall>
jtulach@225
    43
        <antcall target="-build-one">
jtulach@225
    44
            <param name="version" value="app-spring"/>
jtulach@352
    45
            <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes:../../libs/dist/${spring.jar}"/>
jtulach@225
    46
        </antcall>
jtulach@229
    47
        <antcall target="-build-one">
jtulach@230
    48
            <param name="version" value="app-spring-scan"/>
jtulach@352
    49
            <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes:../../libs/dist/${spring.jar}"/>
jtulach@230
    50
        </antcall>
jtulach@230
    51
        <antcall target="-build-one">
jtulach@229
    52
            <param name="version" value="app-lookup"/>
jtulach@340
    53
            <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes:../../libs/dist/org-openide-util-lookup.jar"/>
jtulach@229
    54
        </antcall>
jtulach@246
    55
        <antcall target="-build-one">
jtulach@246
    56
            <param name="version" value="app-serviceloader"/>
jtulach@246
    57
            <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes"/>
jtulach@246
    58
        </antcall>
jtulach@252
    59
        <antcall target="-build-one">
jtulach@252
    60
            <param name="version" value="test"/>
jtulach@252
    61
            <param name="cp" value="build/api/classes:build/gui/classes:build/app-serviceloader/classes:build/app-lookup/classes:${junit.jar}:${nbjunit.jar}:${insane.jar}"/>
jtulach@252
    62
        </antcall>
jtulach@215
    63
        
jtulach@215
    64
    </target>
jtulach@215
    65
    
jtulach@252
    66
    <target name="run" depends="build">
jtulach@221
    67
        <echo level="info" message="Running registerXYZ version"/>
jtulach@215
    68
        <antcall target="-run-one">
jtulach@219
    69
            <param name="version" value="app-register"/>
jtulach@219
    70
            <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes"/>
jtulach@219
    71
            <param name="main" value="org.apidesign.anagram.app.register.Main"/>
jtulach@215
    72
        </antcall>
jtulach@221
    73
        <echo level="info" message="Running System.getProperty version"/>
jtulach@221
    74
        <antcall target="-run-one">
jtulach@221
    75
            <param name="version" value="app-property"/>
jtulach@221
    76
            <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes"/>
jtulach@221
    77
            <param name="main" value="org.apidesign.anagram.app.property.Main"/>
jtulach@221
    78
        </antcall>
jtulach@225
    79
        <echo level="info" message="Running spring version"/>
jtulach@225
    80
        <antcall target="-run-one">
jtulach@225
    81
            <param name="version" value="app-spring"/>
jtulach@367
    82
            <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes:../../libs/dist/${spring.jar}:../../libs/dist/commons-logging-1.1.jar"/>
jtulach@225
    83
            <param name="main" value="org.apidesign.anagram.app.spring.Main"/>
jtulach@225
    84
        </antcall>
jtulach@230
    85
        <echo level="info" message="Running spring autoscan version"/>
jtulach@230
    86
        <antcall target="-run-one">
jtulach@230
    87
            <param name="version" value="app-spring-scan"/>
jtulach@367
    88
            <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes:../../libs/dist/${spring.jar}:../../libs/dist/commons-logging-1.1.jar"/>
jtulach@230
    89
            <param name="main" value="org.apidesign.anagram.app.springscan.Main"/>
jtulach@230
    90
        </antcall>
jtulach@228
    91
        <echo level="info" message="Running registerGeneral version"/>
jtulach@228
    92
        <antcall target="-run-one">
jtulach@228
    93
            <param name="version" value="app-register-general"/>
jtulach@228
    94
            <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes"/>
jtulach@228
    95
            <param name="main" value="org.apidesign.anagram.app.registergeneral.Main"/>
jtulach@228
    96
        </antcall>
jtulach@229
    97
        <echo level="info" message="Running lookup version"/>
jtulach@229
    98
        <antcall target="-run-one">
jtulach@229
    99
            <param name="version" value="app-lookup"/>
jtulach@340
   100
            <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes:../../libs/dist/org-openide-util-lookup.jar"/>
jtulach@229
   101
            <param name="main" value="org.apidesign.anagram.app.lookup.Main"/>
jtulach@229
   102
        </antcall>
jtulach@246
   103
        <antcall target="-run-one">
jtulach@246
   104
            <param name="version" value="app-serviceloader"/>
jtulach@252
   105
            <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes:${junit.jar}:${nbjunit.jar}:${insane.jar}"/>
jtulach@246
   106
            <param name="main" value="org.apidesign.anagram.app.serviceloader.Main"/>
jtulach@246
   107
        </antcall>
jtulach@336
   108
        <echo level="info" message="Running @Words annotation version"/>
jtulach@336
   109
        <antcall target="-run-one">
jtulach@336
   110
            <param name="version" value="app-lookup"/>
jtulach@367
   111
            <param name="cp" value="build/api/classes:build/word-annotated/classes:build/api-compiletimecaches/classes:build/scrambler-simple/classes:build/gui/classes:../../libs/dist/org-openide-util-lookup.jar:../../libs/dist/org-openide-util.jar:../../libs/dist/org-openide-filesystems.jar"/>
jtulach@336
   112
            <param name="main" value="org.apidesign.anagram.app.lookup.Main"/>
jtulach@336
   113
        </antcall>
jtulach@215
   114
    </target>
jtulach@252
   115
jtulach@252
   116
    <target name="test" depends="build">
jtulach@252
   117
        <echo level="info" message="Testing using MockServices"/>
jtulach@252
   118
        <antcall target="-test-one">
jtulach@252
   119
            <param name="version" value="app-test"/>
jtulach@340
   120
            <param name="cp" value="build/api/classes:build/gui/classes:build/app-serviceloader/classes:build/app-lookup/classes:${junit.jar}:${nbjunit.jar}:${insane.jar}:../../libs/dist/org-openide-util-lookup.jar"/>
jtulach@252
   121
        </antcall>
jtulach@252
   122
    </target>
jtulach@252
   123
        
jtulach@215
   124
    <!-- support methods -->
jtulach@215
   125
    
jtulach@215
   126
    <target name="-libraries">
jtulach@215
   127
        <ant dir="../../libs/"/>
jtulach@215
   128
        
jtulach@246
   129
        <property name="junit.jar" location="../../libs/dist/junit-4.4.jar"/>
jtulach@252
   130
        <property name="nbjunit.jar" location="../../libs/dist/org-netbeans-modules-nbjunit.jar"/>
jtulach@252
   131
        <property name="insane.jar" location="../../libs/dist/org-netbeans-insane.jar"/>
jtulach@215
   132
    </target>
jtulach@215
   133
jtulach@219
   134
    <target name="-run-one">
jtulach@367
   135
        <java classpath="${cp}:build/${version}/classes" classname="${main}" fork="true">
jtulach@246
   136
            <jvmarg value="-Danagram.version=${version}"/>
jtulach@246
   137
        </java>
jtulach@215
   138
    </target>
jtulach@215
   139
    
jtulach@215
   140
    <target name="-build-one">
jtulach@215
   141
        <fail message="You need to specify version number" unless="version"/>
jtulach@215
   142
        
jtulach@215
   143
        <mkdir dir="build/${version}/classes"/>
jtulach@219
   144
        <property name="cp" value="build/api/classes"/>
jtulach@215
   145
        <javac 
jtulach@215
   146
            srcdir="src-${version}" 
jtulach@215
   147
            destdir="build/${version}/classes" 
jtulach@215
   148
            source="1.5" target="1.5"
jtulach@215
   149
            classpath="${cp}"
jtulach@215
   150
            debug="true" debuglevel="lines,vars,source"
jtulach@215
   151
        />
jtulach@215
   152
        <copy todir="build/${version}/classes">
jtulach@215
   153
            <fileset dir="src-${version}">
jtulach@215
   154
                <exclude name="**/*.java"/>
jtulach@215
   155
            </fileset>
jtulach@215
   156
        </copy>
jtulach@215
   157
    </target>
jtulach@252
   158
    <target name="-test-one">
jtulach@252
   159
        <fail message="You need to specify API version number" unless="version"/>
jtulach@252
   160
        <mkdir dir="build/testresults"/>
jtulach@252
   161
        <junit dir="build/test/classes" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true">
jtulach@252
   162
            <batchtest todir="build/testresults">
jtulach@252
   163
                <fileset dir="build/test/classes">
jtulach@252
   164
                    <filename name="**/*Test.class"/>
jtulach@252
   165
                </fileset>
jtulach@252
   166
            </batchtest>
jtulach@252
   167
            <classpath>
jtulach@252
   168
                <path path="${cp}"/>
jtulach@252
   169
                <path location="build/test/classes"/>
jtulach@252
   170
                <path location="${junit.jar}"/>
jtulach@252
   171
            </classpath>
jtulach@252
   172
            <formatter type="brief" usefile="false"/>
jtulach@252
   173
            <formatter type="xml"/>
jtulach@252
   174
        </junit>
jtulach@252
   175
    </target>
jtulach@215
   176
</project>