카테고리 없음
JDK 1.7 Ant Build
역신
2024. 11. 17. 14:47
SMALL
JDK 1.7 == apache-ant-1.9.0
JDK 1.8 == apache-ant-1.10.0
set JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF-8
set JAVA_HOME=C:\eGovFrameDev-3.10.0-64bit\jre1.8.0_391
set JAVA_HOME=C:\eGovFrameDev-3.10.0-64bit\jdk1.7.0_79
set JAVA_HOME=C:\eGovFrameDev-3.10.0-64bit\jdk1.8.0_202
Ant build를 위한 스크립트 생성
build.xml
<?xml version="1.0" encoding="UTF-8"?>
<project name="test_compile" default="main" basedir="." xmlns:artifact="antlib:org.apache.maven.artifact.ant">
<!-- property 정의 -->
<property name="build.dir" location="target"/>
<property name="build.dir.class" location="${build.dir}/classes"/>
<property name="src.dir" location="src"/>
<property name="lib.dir" location="src\main\webapp\WEB-INF\lib" />
<property name="jar.output.dir" location="lib" />
<property name="junit.output.dir" location="junitTestReport" />
<!-- <target name="main" depends="import-dependency, makeJar, clean"/> -->
<target name="main" depends="import-dependency, makeJar ">
</target>
<!-- maven jar 파일 설정-->
<path id="maven-ant-tasks.classpath" path="${lib.dir}/maven-ant-tasks-2.1.3.jar" />
<typedef resource="org/apache/maven/artifact/ant/antlib.xml"
uri="antlib:org.apache.maven.artifact.ant"
classpathref="maven-ant-tasks.classpath" />
<artifact:pom id="pom" file="pom.xml"/>
<artifact:dependencies filesetId="pom.fileset" pathId="pom.classpath" pomRefId="pom"/>
<!-- maven에 dependency된 jar파일을 복사 -->
<target name="import-dependency" description="copy dependency jar file to lib" >
<copy todir="${lib.dir}">
<fileset refid="pom.fileset"/>
<mapper type="flatten"/>
</copy>
</target>
<!-- compile java prepare-->
<target name="compile" depends="import-dependency">
<javac srcdir="${src.dir}" destdir="${build.dir.class}" encoding="utf-8" includeantruntime="false">
<classpath refid="pom.classpath" />
</javac>
</target>
<!-- mkdir : classes patch -->
<target name="prepare">
<mkdir dir="${build.dir.class}"/>
<mkdir dir="${jar.output.dir}"/>
</target>
<!-- project jar file output -->
<target name="makeJar" depends="compile">
<jar jarfile="${jar.output.dir}/test_compile-1.0.war" basedir="${build.dir.class}"/>
</target>
<target name="clean">
<delete dir="${build.dir.class}"/>
</target>
<!-- properties file copy -->
<copy todir="${build.dir.class}/com/test">
<fileset dir="${src.dir}/main/resources">
<include name="*.properties" />
</fileset>
</copy>
</project>
Pom.xml을 참조하는 디펜더시가 있는경우
maven-ant-tasks-2.1.3.jar
파일을 다운로드 해야 한다.
WINDOW ,CMD에서 테스트
JDK = ANT
명령어 : ANT or ant clean compile
JDK 버전 이슈도 있지만 컴파일은 잘된다.
LIST