今日もビルドしてみた。

噂のLucandraをビルドしたよ。


slf4j使ってる風味なivy.xmlだけど実際に使ってるのは、
log4jなので、それっぽいdependencyを追加しないとコケる。
ナニソレ?って感じだけどもさ。

<ivy-module version="2.0">
  <info organisation="lucandra" module="lucandra"/>
  <dependencies>
    <dependency org="log4j" name="log4j" rev="1.2.15" conf="* -> *,!sources,!javadoc">
      <exclude name="jms" />
      <exclude name="jmxtools" />
      <exclude name="jmxri" />
    </dependency>
    <dependency org="junit" name="junit" rev="4.6" conf="* -> *,!sources,!javadoc" />
    <dependency org="org.slf4j" name="slf4j-api" rev="1.5.8" conf="* -> *,!sources,!javadoc"/>
    <dependency org="org.slf4j" name="slf4j-simple" rev="1.5.8" conf="* -> *,!sources,!javadoc"/>
    <dependency org="commons-lang" name="commons-lang" rev="2.4" conf="* -> *,!sources,!javadoc"/>
    <dependency org="org.apache.solr" name="solr-core" rev="1.4.0" conf="* -> *,!sources,!javadoc"/>
  </dependencies>
</ivy-module>

ついでに、ant testってしようとするとクラス名がアレでナニなので、
テストにこけるっていうか、JUnitのテストコードじゃないものにも、
〜Testって付いてるんだよね。
というわけで、build.xmlも修正する。部分的に切りだすと、大体こんな感じ。

        <target name="test" depends="compile.tests">
          <echo message="running tests"/>
          <mkdir dir="${build}/output"/>
          <junit fork="on" failureproperty="testfailed">
            <classpath refid="lucandra.classpath"/>
            <formatter type="xml" usefile="true"/>
            <formatter type="brief" usefile="false"/>

            <batchtest todir="${build}/output">
              <fileset dir="${build.test.classes}" includes="**/LucandraTests*" />
            </batchtest>
            <jvmarg value="-Dcassandra.host=${cassandra.host}"/>
            <jvmarg value="-Dcassandra.port=${cassandra.port}"/>
            <jvmarg value="-Dcassandra.framed=${cassandra.framed}"/>
          </junit>
          <fail if="testfailed" message="Some test(s) failed."/>
        </target>

Windowsでも、「BookmarksDemo」ってのは、eclipse越しに動いたヨ。