--- a +++ b/build.xml @@ -0,0 +1,108 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- You may freely edit this file. See commented blocks below for --> +<!-- some examples of how to customize the build. --> +<!-- (If you delete it and reopen the project it will be recreated.) --> +<!-- By default, only the Clean and Build commands use this build script. --> +<!-- Commands such as Run, Debug, and Test only use this build script if --> +<!-- the Compile on Save feature is turned off for the project. --> +<!-- You can turn off the Compile on Save (or Deploy on Save) setting --> +<!-- in the project's Project Properties dialog box.--> +<project name="BruteForceML" default="default" basedir="."> + <description>Builds, tests, and runs the project BruteForceML.</description> + <import file="nbproject/build-impl.xml"/> + <!-- + + There exist several targets which are by default empty and which can be + used for execution of your tasks. These targets are usually executed + before and after some main targets. They are: + + -pre-init: called before initialization of project properties + -post-init: called after initialization of project properties + -pre-compile: called before javac compilation + -post-compile: called after javac compilation + -pre-compile-single: called before javac compilation of single file + -post-compile-single: called after javac compilation of single file + -pre-compile-test: called before javac compilation of JUnit tests + -post-compile-test: called after javac compilation of JUnit tests + -pre-compile-test-single: called before javac compilation of single JUnit test + -post-compile-test-single: called after javac compilation of single JUunit test + -pre-jar: called before JAR building + -post-jar: called after JAR building + -post-clean: called after cleaning build products + + (Targets beginning with '-' are not intended to be called on their own.) + + Example of inserting an obfuscator after compilation could look like this: + + <target name="-post-compile"> + <obfuscate> + <fileset dir="${build.classes.dir}"/> + </obfuscate> + </target> + + For list of available properties check the imported + nbproject/build-impl.xml file. + + + Another way to customize the build is by overriding existing main targets. + The targets of interest are: + + -init-macrodef-javac: defines macro for javac compilation + -init-macrodef-junit: defines macro for junit execution + -init-macrodef-debug: defines macro for class debugging + -init-macrodef-java: defines macro for class execution + -do-jar: JAR building + run: execution of project + -javadoc-build: Javadoc generation + test-report: JUnit report generation + + An example of overriding the target for project execution could look like this: + + <target name="run" depends="BruteForceWeka-impl.jar"> + <exec dir="bin" executable="launcher.exe"> + <arg file="${dist.jar}"/> + </exec> + </target> + + Notice that the overridden target depends on the jar target and not only on + the compile target as the regular run target does. Again, for a list of available + properties which you can use, check the target you are overriding in the + nbproject/build-impl.xml file. + + --> + + <target name="package-for-store" depends="jar"> + <property name="store.jar.name" value="biodiscml"/> + <property name="store.dir" value="release"/> + <property name="datasets.dir" value="${store.dir}/Test_datasets/"/> + <property name="store.jar" value="${store.dir}/${store.jar.name}.jar"/> + <echo message="Packaging ${application.title} into a single JAR at ${store.jar}"/> + <delete dir="${store.dir}"/> + <mkdir dir="${store.dir}"/> + <jar destfile="${store.dir}/temp_final.jar" filesetmanifest="skip"> + <zipgroupfileset dir="dist" includes="*.jar"/> + <zipgroupfileset dir="dist/lib" includes="*.jar"/> + <manifest> + <attribute name="Main-Class" value="${main.class}"/> + </manifest> + </jar> + <zip destfile="${store.jar}"> + <zipfileset src="${store.dir}/temp_final.jar" + excludes="META-INF/*.SF, META-INF/*.DSA, META-INF/*.RSA"/> + </zip> + <delete file="${store.dir}/temp_final.jar"/> + <copy file="config.conf" tofile="${store.dir}/config.conf"/> + <copy file="readme.md" tofile="${store.dir}/readme.md"/> + <copy file="LICENSE.txt" tofile="${store.dir}/LICENSE.txt"/> + <!-- + <copy file="benchmark/Datasets_results.xlsx" tofile="${store.dir}/Test_datasets/Datasets_results.xlsx"/> + <mkdir dir="${store.dir}/Test_datasets/"/> + <copydir src="benchmark/CNS" dest="${datasets.dir}/CNS"/> + <copydir src="benchmark/colonAC" dest="${datasets.dir}/colonAC"/> + <copydir src="benchmark/dlbcl" dest="${datasets.dir}/dlbcl"/> + <copydir src="benchmark/mint_stem_cells" dest="${datasets.dir}/mint_stem_cells"/> + <copydir src="benchmark/prostate-singh" dest="${datasets.dir}/prostate-singh"/> + + --> + </target> +</project>