365 lines
8.9 KiB
XML
365 lines
8.9 KiB
XML
<?xml version="1.0" ?>
|
|
|
|
<project
|
|
basedir="."
|
|
default="run"
|
|
name="Thinking in Java, 4th Edition (Refreshed) by Bruce Eckel (chapter: strings)">
|
|
|
|
<description>
|
|
build.xml for the source code for the strings chapter of
|
|
Thinking in Java, 4th Edition (Refreshed) by Bruce Eckel
|
|
Source code available at http://www.MindView.net
|
|
See copyright notice in CopyRight.txt
|
|
|
|
Ant available from: http://ant.apache.org/
|
|
|
|
To see options, type: ant -p
|
|
</description>
|
|
|
|
<condition property="version1.8">
|
|
<equals arg1="1.8" arg2="${ant.java.version}"/>
|
|
</condition>
|
|
|
|
<target name="generics_coffee">
|
|
<javac
|
|
classpath="${basedir}/.."
|
|
srcdir="${basedir}/../generics/coffee/">
|
|
<compilerarg value="-Xmaxerrs"/>
|
|
<compilerarg value="10"/>
|
|
</javac>
|
|
</target>
|
|
|
|
<target name="net_mindview_util">
|
|
<javac
|
|
classpath="${basedir}/.."
|
|
srcdir="${basedir}/../net/mindview/util/">
|
|
<compilerarg value="-Xmaxerrs"/>
|
|
<compilerarg value="10"/>
|
|
</javac>
|
|
</target>
|
|
|
|
<target
|
|
depends="generics_coffee,net_mindview_util"
|
|
description="Build all classes in this directory"
|
|
name="build">
|
|
<fail message="J2SE8 required" unless="version1.8"/>
|
|
<echo message="Building 'strings'"/>
|
|
<javac
|
|
classpath="${basedir}/.."
|
|
debug="true"
|
|
srcdir="${basedir}">
|
|
<compilerarg value="-Xmaxerrs"/>
|
|
<compilerarg value="10"/>
|
|
</javac>
|
|
<echo message="Build 'strings' succeeded"/>
|
|
</target>
|
|
|
|
<target name="ArrayListDisplay">
|
|
<java
|
|
classname="ArrayListDisplay"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="BetterRead">
|
|
<java
|
|
classname="BetterRead"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="Concatenation">
|
|
<java
|
|
classname="Concatenation"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="Conversion">
|
|
<java
|
|
classname="Conversion"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="DatabaseException">
|
|
<java
|
|
classname="DatabaseException"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="Finding">
|
|
<java
|
|
classname="Finding"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="Groups">
|
|
<java
|
|
classname="Groups"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="Immutable">
|
|
<java
|
|
classname="Immutable"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="InfiniteRecursion">
|
|
<java
|
|
classname="InfiniteRecursion"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="IntegerMatch">
|
|
<java
|
|
classname="IntegerMatch"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="JGrep">
|
|
<java
|
|
classname="JGrep"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true">
|
|
<arg line='JGrep.java "\\b[Ssct]\\w+"'/>
|
|
|
|
</java>
|
|
</target>
|
|
|
|
<target name="Receipt">
|
|
<java
|
|
classname="Receipt"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="ReFlags">
|
|
<java
|
|
classname="ReFlags"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="Replacing">
|
|
<java
|
|
classname="Replacing"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="ReplacingStringTokenizer">
|
|
<java
|
|
classname="ReplacingStringTokenizer"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="Resetting">
|
|
<java
|
|
classname="Resetting"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="Rudolph">
|
|
<java
|
|
classname="Rudolph"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="ScannerDelimiter">
|
|
<java
|
|
classname="ScannerDelimiter"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="SimpleFormat">
|
|
<java
|
|
classname="SimpleFormat"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="SimpleRead">
|
|
<java
|
|
classname="SimpleRead"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="SplitDemo">
|
|
<java
|
|
classname="SplitDemo"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="Splitting">
|
|
<java
|
|
classname="Splitting"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="StartEnd">
|
|
<java
|
|
classname="StartEnd"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="TestRegularExpression">
|
|
<java
|
|
classname="TestRegularExpression"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true">
|
|
<arg
|
|
line='abcabcabcdefabc "abc+" "(abc)+" "(abc){2,}" '/>
|
|
|
|
</java>
|
|
</target>
|
|
|
|
<target name="TheReplacements">
|
|
<java
|
|
classname="TheReplacements"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="ThreatAnalyzer">
|
|
<java
|
|
classname="ThreatAnalyzer"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="Turtle">
|
|
<java
|
|
classname="Turtle"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target name="UsingStringBuilder">
|
|
<java
|
|
classname="UsingStringBuilder"
|
|
classpath="${java.class.path};${basedir};${basedir}/.."
|
|
dir="../strings/"
|
|
failonerror="true"
|
|
fork="true"/>
|
|
</target>
|
|
|
|
<target
|
|
depends="build"
|
|
description="Compile and run"
|
|
name="run">
|
|
<touch file="failures"/>
|
|
<antcall target="ArrayListDisplay"/>
|
|
<antcall target="BetterRead"/>
|
|
<antcall target="Concatenation"/>
|
|
<antcall target="Conversion"/>
|
|
<antcall target="DatabaseException"/>
|
|
<antcall target="Finding"/>
|
|
<antcall target="Groups"/>
|
|
<antcall target="Immutable"/>
|
|
<antcall target="IntegerMatch"/>
|
|
<antcall target="JGrep"/>
|
|
<antcall target="Receipt"/>
|
|
<antcall target="ReFlags"/>
|
|
<antcall target="Replacing"/>
|
|
<antcall target="ReplacingStringTokenizer"/>
|
|
<antcall target="Resetting"/>
|
|
<antcall target="Rudolph"/>
|
|
<antcall target="ScannerDelimiter"/>
|
|
<antcall target="SimpleFormat"/>
|
|
<antcall target="SimpleRead"/>
|
|
<antcall target="SplitDemo"/>
|
|
<antcall target="Splitting"/>
|
|
<antcall target="StartEnd"/>
|
|
<antcall target="TestRegularExpression"/>
|
|
<antcall target="TheReplacements"/>
|
|
<antcall target="ThreatAnalyzer"/>
|
|
<antcall target="Turtle"/>
|
|
<antcall target="UsingStringBuilder"/>
|
|
<echo message="* InfiniteRecursion must be run by hand *"/>
|
|
<delete file="failures"/>
|
|
</target>
|
|
|
|
<target description="delete all byproducts" name="clean">
|
|
<delete>
|
|
<fileset dir="${basedir}" includes="**/*.class"/>
|
|
<fileset dir="${basedir}" includes="**/*Output.txt"/>
|
|
<fileset dir="${basedir}" includes="**/log.txt"/>
|
|
<fileset dir="${basedir}" includes="failures"/>
|
|
</delete>
|
|
<echo message="clean successful"/>
|
|
</target>
|
|
|
|
</project>
|
|
|
|
|