nitc :: ModelBuilder :: compile_antfile
build.xml
script used to compile build the final jar
# The Ant `build.xml` script used to compile build the final jar
fun compile_antfile(compiler: JavaCompiler, jfiles: Array[String]) do
var compile_dir = compiler.compile_dir
var outname = compiler.outname.to_path.filename
var outpath = (sys.getcwd / compiler.outname).simplify_path
var antname = "{compile_dir}/{outname}.xml"
var antfile = new FileWriter.open(antname)
var jname = compiler.mainmodule.jname
antfile.write("<project>")
antfile.write(" <target name=\"compile\">")
antfile.write(" <mkdir dir=\"classes\"/>")
antfile.write(" <javac includes=\"{compiler.mainmodule.jname}_Main.java {jfiles.join(" ")}\" srcdir=\".\" destdir=\"classes\"/>")
antfile.write(" </target>")
antfile.write(" <target name=\"jar\" depends=\"compile\">")
antfile.write(" <jar destfile=\"{outpath}.jar\" basedir=\"classes\">")
antfile.write(" <manifest>")
antfile.write(" <attribute name=\"Main-Class\" value=\"{jname}_Main\"/>")
antfile.write(" </manifest>")
antfile.write(" </jar>")
antfile.write(" </target>")
antfile.write("</project>")
antfile.close
toolcontext.info("Generated antfile: {antname}", 2)
end
src/compiler/java_compiler.nit:182,2--205,4