-
사전 준비
- 아파치 앤트 빌드 툴 : http://ant.apache.org/
- JUnit Jar : 좋은 경로를 아직 못구했다. jar파일마다 다 깨져있어 엉엉 ㅠ.ㅠ
아래와 같이 폴더를 구성한다.
[weejw@com ~]$ tree hpcbuild/
hpcbuild/
├── lib
└── src
├── java
└── test
4 directories, 0 files카산드라의 라이브러리와 다운받은 JUnit 라이브러리를 위에서 생성한 lib폴더안에 복사한다.
[weejw@com lib]$ ls
HdrHistogram-2.1.9.jar jctools-core-1.2.1.jar
ST4-4.0.8.jar jflex-1.6.0.jar
airline-0.6.jar jna-4.2.2.jar
antlr-runtime-3.5.2.jar joda-time-2.4.jar
apache-cassandra-3.11.3.jar json-simple-1.1.jar
apache-cassandra-thrift-3.11.3.jar jstackjunit-0.0.1.jar
asm-5.0.4.jar junit-4.10.jar
<..생략>이제 Ant 빌드툴에서 사용할 build.xml을 작성한다.
먼저 가장 위에 필요한 곳의 경로를 설정해준다.
<project name="hpcas" default="dist" basedir=".">
<property name="src" location="src/java"/>
<property name="build" location="build"/>
<property name="build.classes" location="build/classes"/>
<property name="dist" location="dist"/>
<property name="lib" location="lib"/>
</project>빌드를 위한 경로를 아래와 같이 설정해준다.
<path id="hpcas.classpath">
<pathelement location="${build.classes}"/>
<fileset dir="${lib}" includes="*jar"/>
</path>target은 한 단위의 작업을 수행한다.
난중에 ant init , ant run등 과같이 명령어처럼 사용한다고 생각하면 된다.
<target name="init">
<mkdir dir="${build}"/>
<mkdir dir="${build.classes}"/>
</target>
<target name="compile" depends="init">
<javac srcdir="${src}" destdir="${build.classes}" includeantruntime="false">
<classpath refid="hpcas.classpath"/>
</javac>
</target>
<target name="dist" depends="compile">
<mkdir dir="${dist}/lib"/>
<jar jarfile="${dist}/lib/hpcas.jar" basedir="${build.classes}"/>
</target>
<target name="run" depends="dist">
<java classname="${classToRun}">
<classpath refid="hpcas.classpath"/>
</java>
</target>
<target name="clean">
<delete dir="${build}"/>
<delete dir="${dist}"/>
</target>그리고서 src/java 아래에 다음과같이 간단하게 코드를 하나 작성해주자.
public class A{
public static void main(String[] args){
System.out.println("yo cassandra");
}
}그리고서 아래와 같이 실행 시켜주면 결과를 확인 할 수 있다.
[weejw@com hpcbuild]$ ant -DclassToRun=A run
Buildfile: /home/weejw/hpcbuild/build.xml
init:
[mkdir] Created dir: /home/weejw/hpcbuild/build
[mkdir] Created dir: /home/weejw/hpcbuild/build/classes
compile:
[javac] Compiling 1 source file to /home/weejw/hpcbuild/build/classes
dist:
[mkdir] Created dir: /home/weejw/hpcbuild/dist/lib
[jar] Building jar: /home/weejw/hpcbuild/dist/lib/hpcas.jar
run:
[java] yo cassandra
BUILD SUCCESSFUL
Total time: 2 seconds만약에 junit을 이용해서 test하기 위해선 아래와같은 내용만 추가해주면 된다.
1) test를 위한 경로를 잡아준다.
2) 초기화부분에 test용 폴더를 만들어준다.
3) junit에 대한 설정을 해준다.
<property name="test.src" location="src/test"/>
<property name="test.build" location="build/test"/><...생략>
<path id="hpcas.test.classpath">
<pathelement location="${test.build}"/>
<fileset refid="hpcas.classpath"/>
</path>
<target name="init">
<mkdir dir="${build}"/>
<mkdir dir="${build.classes}"/>
<mkdir dir="${test.build}"/>
</target><target name="compile-test" depends="init">
<javac srcdir="${test.src}" destdir="${test.build}">
<classpath refid="hpcas.test.classpath"/>
</javac>
</target>
<target name="test" depends="compile-test,compile">
<junit printsummary="yes" showoutput="ture">
<batchest>
<fileset dir="${test.build" includes="**/Test*.class"/>
</batchest>
</junit>
</target>'2018년 > DataBase' 카테고리의 다른 글
카산드라-4부 : 카산드라와 연결하기. (0) 2018.09.16 카산드라-3부 : 파티셔닝 (0) 2018.09.16 카산드라 -1부 : 설치와 인스턴스 실행해보기 (0) 2018.09.13 3장 클라이언트 API : 기본기능 - 스캔 (0) 2018.08.18 3장 클라이언트 API : 기본기능 - 일괄처리 연산 (0) 2018.08.17