メモ: JSON-java

githubサーフィンしてたら、Douglas Crockford先生のJavaJSONを扱うための参考実装を見つけました。

試しに使おうとしたらjarもビルドファイルもなかったので、書いたbuild.xmlをメモ。

findjar(http://findjar.com/index.x)で探すとjson-jena-1.0.jarが一応見つかりますが、バージョンが古く、githubにあるJSONML.classとJSONWriter.classが含まれていませんでした。最新版ってどっかにあるのかな?

<?xml version="1.0"?>
<project name="JSON-java" default="makejar" basedir=".">

    <property name="src.dir" value="."/>
    <property name="class.dir" value="classes"/>
    <property name="lib.dir" value="lib"/>
    <property name="dest.dir" value="dest"/>
    <property name="jarname" value="java-json-201111"/>

    <path id="junit.framework">
        <fileset dir="${lib.dir}">
            <include name="*.jar" />
        </fileset>
    </path>

    <target name="init">
        <mkdir dir="${class.dir}"/>
    </target>

    <target name="compile" depends="init"
      description="Compiles all source code.">
        <javac srcdir="${src.dir}" destdir="${class.dir}" debug="on"
          classpathref="junit.framework" includeantruntime="false"/>
    </target>

    <target name="makejar" description="Make jar file" depends="compile">
        <mkdir dir="${dest.dir}"/>
        <jar basedir="${class.dir}" destfile="${dest.dir}\${jarname}.jar"/>
    </target>

    <target name="clean" description="Erases contents of classes dir">
        <delete dir="${class.dir}"/>
        <delete dir="${dest.dir}"/>
    </target>

</project>
  1. githubから{JSON_JAVA_HOME}にチェックアウトする
  2. {JSON_JAVA_HOME}/libフォルダを作り、junitのjarを突っ込む
  3. 上記を{JSON_JAVA_HOME}/build.xmlに置いてantを実行する