1*b1cdbd2cSJim Jagielski<?xml version="1.0" encoding="UTF-8"?> 2*b1cdbd2cSJim Jagielski<!--*********************************************************** 3*b1cdbd2cSJim Jagielski * 4*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one 5*b1cdbd2cSJim Jagielski * or more contributor license agreements. See the NOTICE file 6*b1cdbd2cSJim Jagielski * distributed with this work for additional information 7*b1cdbd2cSJim Jagielski * regarding copyright ownership. The ASF licenses this file 8*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the 9*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance 10*b1cdbd2cSJim Jagielski * with the License. You may obtain a copy of the License at 11*b1cdbd2cSJim Jagielski * 12*b1cdbd2cSJim Jagielski * http://www.apache.org/licenses/LICENSE-2.0 13*b1cdbd2cSJim Jagielski * 14*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing, 15*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an 16*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 17*b1cdbd2cSJim Jagielski * KIND, either express or implied. See the License for the 18*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations 19*b1cdbd2cSJim Jagielski * under the License. 20*b1cdbd2cSJim Jagielski * 21*b1cdbd2cSJim Jagielski ***********************************************************--> 22*b1cdbd2cSJim Jagielski<!-- You may freely edit this file. See commented blocks below for --> 23*b1cdbd2cSJim Jagielski<!-- some examples of how to customize the build. --> 24*b1cdbd2cSJim Jagielski<!-- (If you delete it and reopen the project it will be recreated.) --> 25*b1cdbd2cSJim Jagielski<!-- By default, only the Clean and Build commands use this build script. --> 26*b1cdbd2cSJim Jagielski<!-- Commands such as Run, Debug, and Test only use this build script if --> 27*b1cdbd2cSJim Jagielski<!-- the Compile on Save feature is turned off for the project. --> 28*b1cdbd2cSJim Jagielski<!-- You can turn off the Compile on Save (or Deploy on Save) setting --> 29*b1cdbd2cSJim Jagielski<!-- in the project's Project Properties dialog box.--> 30*b1cdbd2cSJim Jagielski<project name="ConvwatchGUIProject" default="default" basedir="."> 31*b1cdbd2cSJim Jagielski <description>Builds, tests, and runs the project ConvwatchGUIProject.</description> 32*b1cdbd2cSJim Jagielski <import file="nbproject/build-impl.xml"/> 33*b1cdbd2cSJim Jagielski <!-- 34*b1cdbd2cSJim Jagielski 35*b1cdbd2cSJim Jagielski There exist several targets which are by default empty and which can be 36*b1cdbd2cSJim Jagielski used for execution of your tasks. These targets are usually executed 37*b1cdbd2cSJim Jagielski before and after some main targets. They are: 38*b1cdbd2cSJim Jagielski 39*b1cdbd2cSJim Jagielski -pre-init: called before initialization of project properties 40*b1cdbd2cSJim Jagielski -post-init: called after initialization of project properties 41*b1cdbd2cSJim Jagielski -pre-compile: called before javac compilation 42*b1cdbd2cSJim Jagielski -post-compile: called after javac compilation 43*b1cdbd2cSJim Jagielski -pre-compile-single: called before javac compilation of single file 44*b1cdbd2cSJim Jagielski -post-compile-single: called after javac compilation of single file 45*b1cdbd2cSJim Jagielski -pre-compile-test: called before javac compilation of JUnit tests 46*b1cdbd2cSJim Jagielski -post-compile-test: called after javac compilation of JUnit tests 47*b1cdbd2cSJim Jagielski -pre-compile-test-single: called before javac compilation of single JUnit test 48*b1cdbd2cSJim Jagielski -post-compile-test-single: called after javac compilation of single JUunit test 49*b1cdbd2cSJim Jagielski -pre-jar: called before JAR building 50*b1cdbd2cSJim Jagielski -post-jar: called after JAR building 51*b1cdbd2cSJim Jagielski -post-clean: called after cleaning build products 52*b1cdbd2cSJim Jagielski 53*b1cdbd2cSJim Jagielski (Targets beginning with '-' are not intended to be called on their own.) 54*b1cdbd2cSJim Jagielski 55*b1cdbd2cSJim Jagielski Example of inserting an obfuscator after compilation could look like this: 56*b1cdbd2cSJim Jagielski 57*b1cdbd2cSJim Jagielski <target name="-post-compile"> 58*b1cdbd2cSJim Jagielski <obfuscate> 59*b1cdbd2cSJim Jagielski <fileset dir="${build.classes.dir}"/> 60*b1cdbd2cSJim Jagielski </obfuscate> 61*b1cdbd2cSJim Jagielski </target> 62*b1cdbd2cSJim Jagielski 63*b1cdbd2cSJim Jagielski For list of available properties check the imported 64*b1cdbd2cSJim Jagielski nbproject/build-impl.xml file. 65*b1cdbd2cSJim Jagielski 66*b1cdbd2cSJim Jagielski 67*b1cdbd2cSJim Jagielski Another way to customize the build is by overriding existing main targets. 68*b1cdbd2cSJim Jagielski The targets of interest are: 69*b1cdbd2cSJim Jagielski 70*b1cdbd2cSJim Jagielski -init-macrodef-javac: defines macro for javac compilation 71*b1cdbd2cSJim Jagielski -init-macrodef-junit: defines macro for junit execution 72*b1cdbd2cSJim Jagielski -init-macrodef-debug: defines macro for class debugging 73*b1cdbd2cSJim Jagielski -init-macrodef-java: defines macro for class execution 74*b1cdbd2cSJim Jagielski -do-jar-with-manifest: JAR building (if you are using a manifest) 75*b1cdbd2cSJim Jagielski -do-jar-without-manifest: JAR building (if you are not using a manifest) 76*b1cdbd2cSJim Jagielski run: execution of project 77*b1cdbd2cSJim Jagielski -javadoc-build: Javadoc generation 78*b1cdbd2cSJim Jagielski test-report: JUnit report generation 79*b1cdbd2cSJim Jagielski 80*b1cdbd2cSJim Jagielski An example of overriding the target for project execution could look like this: 81*b1cdbd2cSJim Jagielski 82*b1cdbd2cSJim Jagielski <target name="run" depends="ConvwatchGUIProject-impl.jar"> 83*b1cdbd2cSJim Jagielski <exec dir="bin" executable="launcher.exe"> 84*b1cdbd2cSJim Jagielski <arg file="${dist.jar}"/> 85*b1cdbd2cSJim Jagielski </exec> 86*b1cdbd2cSJim Jagielski </target> 87*b1cdbd2cSJim Jagielski 88*b1cdbd2cSJim Jagielski Notice that the overridden target depends on the jar target and not only on 89*b1cdbd2cSJim Jagielski the compile target as the regular run target does. Again, for a list of available 90*b1cdbd2cSJim Jagielski properties which you can use, check the target you are overriding in the 91*b1cdbd2cSJim Jagielski nbproject/build-impl.xml file. 92*b1cdbd2cSJim Jagielski 93*b1cdbd2cSJim Jagielski --> 94*b1cdbd2cSJim Jagielski</project> 95