ant 를 사용 하여 svn 자동 업데이트,컴 파일,svn 제출

4934 단어 SVN
최근 데이터베이스 로 이동 하여 데이터베이스 관련 작업 을 시작 합 니 다.매일 데이터베이스 생 성->실체
그리고 svn.이런 반복 적 인 노동 을 도입 하 는 것 은 항상 사람 을 견 딜 수 없 게 한다.
편 의 를 위해 ant 를 연구 해 보 니 이 도 구 를 사용 하여 svn 을 자동 으로 업로드 할 수 있어 서 매우 편리 하 다.
잔말 말고 일 을 시작 해라
1.인터넷 에서 svnant 가방 다운로드(저 는 svn 1.6 입 니 다.현재 svnant 는 최고 1.6 만 지원 합 니 다.1.7 은 다른 것 으로 대체 하 세 요.저 는 아직 연구 하지 않 았 습 니 다),다운로드 주소:
http://subclipse.tigris.org/files/documents/906/49042/svnant-1.3.1.zip
다운로드 한 svnant 압축 을 풀 고 lib 디 렉 터 리 의 모든 jar 를 ant 홈 디 렉 터 리 의 lib 디 렉 터 리 에 복사 합 니 다.
2.build.xml 작성
svn task 작업 을 사용 하려 면 build.xml 에 추가 할 수 있 습 니 다.
 
<typedef resource="org/tigris/subversion/svnant/svnantlib.xml" />  

 코드 는 다음 과 같 습 니 다:
 
수정 을 줄 이기 위해 서 는 properties 를 사용 하 는 것 이 좋 습 니 다.
여기 서 build.properties 라 고 이름 을 지 었 는데,사실 마음대로 이름 을 지 을 수 있 습 니 다.
일부 물건 을 여기에 두 고 build.xml 수정 을 줄 입 니 다.
 
##         ,    jar  
prop.project.name=ctasdto
##ant  
ant.path=D:/apache-ant-1.8.2/lib
##     
server.path=D:/webapp-server/apache-tomcat-6.0.20
##   jar    
dto.path=D:/work/XXX/output
##   svn  
svn.url=https://XXXX/svn/
## SVN   
svn.user=xiaoxiao
## SVN  
svn.passwd=password

 다음은 build.xml 내용 입 니 다.
 [파일 생 성 이 필요 하기 때문에 eclipse 자체 컴 파일 을 사용 합 니 다.여 기 는 포장,업로드 만 합 니 다]
 
<?xml version="1.0" encoding="gbk"?>

<project name="ctasdto" default="svn"  basedir=".">
    <!--   Property      ,             Property    -->
	<property resource="build.properties" />
	<property name="project.name" value="${prop.project.name}"/>
	<property name="src.dir" value="src" />
	<property name="classes.dir" value="classes"/>
	<property name="javadoc.dir" value="docs"/>
	<property name="obj.dir" value="${prop.dto.path}"/>
	<property name="jar.name" value="${prop.project.name}.jar"/>
	<property name="lib.dir" value="lib"/>
	<property name="svn.url"           value="${prop.svn.url}"/>
	<property name="svn.user"          value="${prop.svn.user}"/>
	<property name="svn.passwd"        value="${prop.svn.passwd}"/>
	<tstamp>
		<format property="buildtime"  pattern="yyyy-MM-dd-HH:mm:ss"/>
	</tstamp>
        <typedef resource="org/tigris/subversion/svnant/svnantlib.xml" />
        <!--   svn     -->  
        <svnSetting id="svn.setting" svnkit="true" username="${svn.user}" password="${svn.passwd}"  javahl="false" />  
	<target name="svn.update" description="      ,      ">
		<echo>  ${obj.dir}      </echo>
		<svn refid="svn.setting">  
            <checkout url="${svn.url}" destPath="${obj.dir}" force="true"/>  
        </svn>  
	</target>
	<target name="clear" depends="svn.update" description="  DTO  ,       ">
	 <delete file="${obj.dir}\${jar.name}"/>
	</target>
	<target name="copyfile" depends="clear" description="      classes ">
		<copy todir="${classes.dir}">
		   <fileset dir="${src.dir}">
  <!--    -->
		   	<exclude name="**/**"/>
		   	</fileset>	
		</copy>
		</target>
	<target name="build" depends="copyfile" description="   jar  " >
		<jar jarfile="${obj.dir}/${jar.name}" basedir="${classes.dir}" >
             <!--          -->
			<include name="**/**"/>
			<include name="config/databaseconfig/**"/>
			<manifest>
				<attribute name="Project-Name" value="${project.name}"/>
				<attribute name="Project-Version" value="1.0"/>
				<attribute name="Project-BuildTime" value="${buildtime}"/>
			</manifest>
		</jar>
	</target>
	<target name="svn" depends="svn.update,clear,copyfile,build" description="  svn">
		<svn refid="svn.setting">
			<commit file="output/${jar.name}" message="       dto.jar  ${buildtime}"/>
		</svn>
	</target>
		
</project>

 
 

좋은 웹페이지 즐겨찾기