Added an ANT build file that provides semi-automatic versioning and

packing the jar file and default config.yml into a zip file.
This commit is contained in:
Pascal Koenig
2011-09-01 22:30:51 +02:00
parent fc52f2f68f
commit 5c03954b48
7 changed files with 84 additions and 61 deletions

4
.gitignore vendored
View File

@@ -1 +1,3 @@
bin ./bin/
./dist/
.build.number

View File

@@ -0,0 +1,3 @@
#Thu Sep 01 01:00:08 CEST 2011
eclipse.preferences.version=1
org.eclipse.ltk.core.refactoring.enable.project.refactoring.history=false

View File

@@ -1,2 +0,0 @@
Manifest-Version: 1.0

View File

@@ -1,56 +1,71 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<project name="XmlStats" basedir="." default="build"> <project name="XmlStats" basedir="." default="build">
<property name="build.classes" value="bin" />
<property name="build.lib" value="lib" /> <property name="bin" value="bin" />
<property name="java.dir" value="." /> <property name="dist" value="dist" />
<property name="src" value="src" />
<property name="name" value="XmlStats" /> <property name="name" value="XmlStats" />
<property name="manifest" value="MANIFEST.MF" /> <property name="version" value="0.1" />
<property name="craftbukkit.dir" value="C:/Users/socrates/AppData/Roaming/.craftbukkit" /> <property name="package" value="de/sockenklaus/XmlStats" />
<property name="resources" value="resources" />
<path id="classpath"> <path id="classpath">
<pathelement location="lib/" /> <pathelement location="lib/" />
</path> </path>
<!-- Anwendung bauen --> <buildnumber file=".build.number" />
<target name="build" depends="clean" description="Baut die komplette Anwendung">
<!-- Verzeichis anlegen -->
<mkdir dir="${build.classes}"/>
<!-- Quelltext kompilieren --> <!-- Anwendung bauen -->
<javac srcdir="${java.dir}" <target name="build" description="Build the plugin" depends="zip" />
destdir="${build.classes}"
<!-- Build a jar file -->
<target name="jar" depends="compile">
<!-- this is some ugly plugin.yml-writing -->
<echo file="${src}/plugin.yml">name: ${name}
main: de.sockenklaus.XmlStats.XmlStats
version: ${version}-b${build.number}
author: sockenklaus</echo>
<jar jarfile="${dist}/${name}.jar">
<fileset dir="${bin}"/>
<fileset file="src/plugin.yml" />
</jar>
</target>
<!-- Clean up -->
<target name="clean.dist" description="Deletes temporary build files">
<delete dir="${dist}" />
</target>
<!-- Compile the source code -->
<target name="compile" depends="clean.classes, clean.dist">
<mkdir dir="bin" />
<javac srcdir="${src}"
destdir="${bin}"
debug="false" debug="false"
deprecation="true" deprecation="true"
optimize="true" > optimize="true" >
<classpath refid="classpath" /> <classpath refid="classpath" />
</javac> </javac>
<!-- Kopiert notwendige Dateien -->
<copy todir="${build.classes}">
<fileset dir="${java.dir}">
<include name="**/*.properties" />
<include name="**/*.gif" />
</fileset>
</copy>
<!-- Baut die JAR-Datei -->
<jar jarfile="${build.lib}/${name}.jar" manifest="${manifest}">
<fileset dir="${build.classes}"/>
</jar>
</target> </target>
<!-- Aufräumen --> <!-- Delete temporary build files -->
<target name="clean" description="Räumt die temporär angelegten Dateien weg"> <target name="clean.classes" description="Deletes temporary build files">
<!-- Löscht Dateien --> <delete dir="${bin}" />
<delete dir="${build.dir}" />
<delete dir="${dist.base}" />
<delete dir="${defaultdist.dir}" />
<delete> <delete>
<fileset dir="." includes="**/*~" defaultexcludes="no"/> <fileset dir="." includes="**/*~" defaultexcludes="no"/>
</delete> </delete>
</target> </target>
<target name="copy" description="Copy ${name}.jar to craftbukkit plugin dir" depends="build"> <!-- build a zip file -->
<copy file="${build.lib}/${name}.jar" tofile="${craftbukkit.dir}/plugins/${name}.jar" /> <target name="zip" depends="jar" description="Zip .jar and config.yml into a zip file">
<zip destfile="${dist}/${name}-${version}-b${build.number}.zip">
<fileset dir="${dist}" includes="${name}.jar" />
<zipfileset dir="${resources}" includes="config.yml" prefix="${name}" />
</zip>
</target> </target>
</project> </project>

4
resources/config.yml Normal file
View File

@@ -0,0 +1,4 @@
options:
webserver-enabled: true
webserver-port: 9123
verbose-enabled: true

View File

@@ -32,7 +32,7 @@ import com.nidefawl.Stats.Stats;
public class XmlStats extends JavaPlugin { public class XmlStats extends JavaPlugin {
private final static Logger log = Logger.getLogger("Minecraft"); private final static Logger log = Logger.getLogger("Minecraft");
private final static double version = 0.01; private String version;
private final static String logprefix = "[XmlStats]"; private final static String logprefix = "[XmlStats]";
private boolean enabled = false; private boolean enabled = false;
@@ -59,6 +59,7 @@ public class XmlStats extends JavaPlugin {
*/ */
@Override @Override
public void onEnable() { public void onEnable() {
this.version = getDescription().getVersion();
getDataFolder().mkdirs(); getDataFolder().mkdirs();
@@ -83,7 +84,7 @@ public class XmlStats extends JavaPlugin {
XmlStatsRegistry.put("webserver", new Webserver()); XmlStatsRegistry.put("webserver", new Webserver());
this.enabled = true; this.enabled = true;
LogInfo("Plugin Enabled"); LogInfo("XmStats "+this.version+" enabled");
} }
catch (Exception ex){ catch (Exception ex){
LogError("Fehler beim Erstellen des Webservers:"); LogError("Fehler beim Erstellen des Webservers:");

View File

@@ -1,4 +1,4 @@
name: XmlStats name: XmlStats
main: de.sockenklaus.XmlStats.XmlStats main: de.sockenklaus.XmlStats.XmlStats
version: 0.01 version: 0.1-b20
author: sockenklaus author: sockenklaus