svn ant 导出java项目生成并运行

【Jenkins】+【Ant】+【SVN】一键部署web项目 Jenkins Ant 打war包 一键部署项目 阅读详情

环境:

1,OS:Windows7

2,JDK:jdk1.7

3,Apache Ant:apache-ant-1.9.6

4,svnant1.3.1

5,已安装svn客户端(1.8.x)

步骤:

1,解压apache-ant-1.9.6-bin.zip

2,添加环境变量ANT_HOME,比如C:\apache-ant-1.9.6-bin

3,Path变量添加ant的bin目录,比如%ANT_HOME%\bin

4,解压svnant,把svnant.jar,svnClientAdapter.jar复制%ANT_HOME%\lib

目标流程:

1,从svn导出Java项目

2,编译

3,打包

4,运行


build.xml:

<span style="font-size:12px;"><?xml version="1.0" encoding="UTF-8"?>
<project name="ant-svn" default="run" basedir=".">
	
	<!--得到当前日期--> 
	<tstamp> 
	    <format property="DSTAMP" pattern="yyyyMMdd" locale="zh"/> 
	    <format property="TSTAMP" pattern="HHmmss" locale="zh"/> 
	</tstamp> 
  
	<property name="svnurl" value="svn://ip/folder1/" />  
	<property name="svn.username" value="uname" />  
	<property name="svn.password" value="pwd" />  
	<property name="dir.home" value="${basedir}/testserver/testserver_${DSTAMP}_${TSTAMP}/"></property>  
	
	<property name="dir.src" value="${dir.home}/src"></property>
	<property name="dir.dest" value="${dir.home}/bin/classes"></property>
	<property name="dir.lib" value="${dir.home}/lib"></property>
	<property name="jarname" value="testprj1.jar"></property>	
	
	<!--已把svnant.jar,svnClientAdapter.jar导入Ant lib path-->
	<typedef resource="org/tigris/subversion/svnant/svnantlib.xml"   classpath="${ant.library.dir}"/>  
	
	<target name="del"><!--删除旧的版本文件夹-->
		<echo message="delete old version"></echo>
		<delete  includeemptydirs="true" performGCOnFailedDelete="true">
			<fileset dir="testserver">
				<include name="**/*"/>
			</fileset>
		</delete>
	</target>  
		
	<!-- 导出export(仅源文件),而不是checkout(带版本控制信息) -->
	<target name="svnexport" depends="del" >  
		<echo message="export from svn server: ${svnurl}"></echo>
		<echo message="export destination folder: ${dir.home}"></echo>
		<svnSetting id="svnparams" username="${svn.username}" password="${svn.password}" javahl="false"/>  	
		<svn refid="svnparams" >  
			<export  srcUrl="${svnurl}" destPath="${dir.home}" />  
		</svn>  	
	</target><!-- 需要安装 svn客户端并设定javahl="false" ,未下载eclipse svnant插件libsvnjavahl-1.dll,没有编辑智能提示 -->
		
	<target name="init" depends="svnexport">
		<mkdir dir="${dir.home}/bin/"/> 
	</target>
	
	<target name="initclassfolder"  depends="init">
		<mkdir dir="${dir.dest}"/>
	</target>	

	<!-- 批量编译  -->
	<target name="compile" depends="initclassfolder">		
		<javac  srcdir="${dir.src}" 
				destdir="${dir.dest}" 				
				encoding="utf-8"			
				debug="true">
			<classpath>
				<fileset dir="${dir.lib}">  
					<include name="*.jar"/>  
				</fileset>
			</classpath>
		</javac>		
	</target>
	
	<!-- 复制xml文件  -->
	<target name="cp" depends="compile">
		<copy todir="${dir.dest}" >
			<fileset dir="${dir.src}">
				<include name="**/*.xml"/>
			</fileset>
		</copy>
	</target>
	
	<!-- 打包  -->
	<target name="build" depends="cp">	
		<jar destfile="${jarname}" basedir="${dir.dest}" ></jar>
	</target>
	
	<!-- 移动 -->
	<target name="mv" depends="build">
		<move todir="${dir.lib}" file="${jarname}"></move>
		<delete dir="${dir.dest}"></delete><!--删除class文件夹-->
	</target>
		
	<!-- 启动Java程序-->
	<target name="run" depends="mv">
		<java classname="com.test.MainPro"   fork="true" dir="${dir.lib}"> 
			<classpath>
				<fileset dir="${dir.lib}">  
					<include name="*.jar"/>  
				</fileset>
			</classpath>
		</java>		
	</target>

</project></span>


配置Apache Ant以支持SVN依赖JAR包 本文还有配套的精品资源,点击获取 简介:在Java开发中,Apache Ant构建工具与SVN版本控制系统是核心组件。为使Ant能直接从SVN获取代码或库,需要配置Ant与SVN的集成,这包括将SVN的JAR包添加到Ant的类路径中。本文详细介绍了如何添加SVN JAR包到Ant的 lib 目录、使用 svnant 任务执行SVN操作,以及如何在... 阅读详情

相关推荐

Ant SVN插件JAR包集成与使用实战

Ant SVN插件的任务模型遵循SVN客户端的操作范式,将其核心功能划分为四个逻辑类别:源码获取、状态同步、变更提交与信息查询。每一类任务都封装了对应的Subversion协议调用,并通过统一的Java API暴露给Ant运行时环境。理解这些任务的语义边界与执行后果,对于设计健壮的构建脚本至关重要。整个加载流程可分为三个阶段:类路径准备:确保及其依赖(如SVNKit)位于Ant的classpath;任务注册:通过<taskdef>将类映射到XML标签;运行时解析。

weixin_33239721的博客 1109

java不是内部成外部_'javac' 不是内部或外部命令,也不是可运行的程序 或批处理文件....

换了个工作环境,好吧,环境重新装一遍,遇到一个’javac’不是内部或外部命令,也不是可运行的程序或批处理文件的错误提示这里就解决一下好了一、下载jdk,具体怎么下载这里就不说了,提供一个下载地址好了,这里一定要注意下载是32位还是64位要跟自己电脑操作系统相匹配二、在安装jdk的时候首先要在安装目录下新建一个jdk和jre,以防止在安装的时候出现被覆盖的情况,我这里的路径为接下来就分别对应解压安...

weixin_39962341的博客 6895

ant操作SVN的jar包

ant操作SVN的jar包 ant SVN联携

ANT集成SVNANT访问SVN(Subversion)

ANT 想要和SVN集成到一起,其实至少有以下三种方案: 方案一:直接利用ANT 的命令 来完成。          需要注意的是,这需要在运行ANT的机器上安装SVN,同时,此种方式严重依赖操作系统。          下面以WINDOWS为例。     <property name="svn-url" value="svn://localhost">     <ta

Alibert的专栏 4671

svnant-1.3.1.rar

svnant-1.3.1, 全面,包括6个jar包,把里面lib文件夹里的jar包拷到ant安装路径下的lib文件夹即可

antsvn更新打包部署提交自动化

NULL 博文链接:https://q-wong.iteye.com/blog/665927

Ant 构建工具(从SVN下载项目 ,编译,到tomcat下运行项目)

<br /> <?xml version="1.0" encoding="UTF-8" ?> - <project name="pro_v5" default="deploy" basedir="."> - <!-- svn 帐号、密码、链接 --> <property name="svn.username" value="test" /> <property name="svn.password" value="p@ssmord" /> <property name

Rose19891213的专栏 4498

svnant-1.3.1

svnant-1.3.1 svn与ant整合的jar包。

自动拉取SVN项目代码并构建打包使用ant

解压文件夹apache-ant-1.8.2.rar,将解压的文件夹放在D盘 修改环境变量:右击计算机==》属性==》高级系统设置==》高级==》环境变量 PATH D:\apache-ant-1.8.2\bin ANT_HOME D:\apache-ant-1.8.2 CLASSPATH D:\apache-ant-1.8.2\lib ant验证:win+R – ...

嗟鸠食桑 697

ant打包的代码,包括从svn上获取代码

ant打包工程的配置文件,包括从svn上自动下载代码,自动打包等

java代码利用svnkit操作svn导出某版本或多个版本修改的文件

利用svnkit操作svn,实现对版本修改文件的导出,可以导出多个版本,.java文件将会在本地取出.class文件,导出后压缩成压缩包,主要用于服务器上的资源更新,不需要开发人员去找到对应的.class文件或其他文件压缩然后给服务器再替换,只需版本号、svn即可导出压缩包,放到服务器上直接解压替换即可,内含详细注释,根据对应的注释,改成自己可用的即可,这个只是做出来的一个初成品,希望能对您有用!喜欢的朋友记得评论,谢谢

SVN导出版本差异的文件

这个是根据之前的一片文章  参考 写的。    结合Ant  做的一个 打包补丁的 程序 package svndiff; import org.apache.tools.ant.Task; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStre

莫忘精彩 4014

使用svnant插件让ant支持从svn更新项目

NULL 博文链接:https://liuna718-163-com.iteye.com/blog/1860021

使用ant实现svn管理得eclipse插件开发项目的日构建功能(ant1.7.1+svn1.6.3+eclipse3.4.2)

说明:本文由网上的文章结合自已的实战而成!     现在的项目发布版本是开发人员每隔一个周期更新代码并打包发布的,这样子做费时费力不说,还造成版本发布周期过长的问题。这样会让开发人员的工作得不到迅速的反馈。所以现在项目组有了日构建的构想,目的就是想减轻一些重复劳动,减短一些开发反馈周期。具体的工作是使用ant实现的,使用ant现在做到了 SVN下载代码,编译,打包,部署,邮件通知等功能。具体的

fm2005的专栏 4109

保姆级教程:在ROS Noetic下,手把手教你将自定义A*全局规划器打包成插件(附避坑指南)

本文提供了一份详细的ROS Noetic下自定义A*全局规划器插件开发指南,涵盖从环境准备、算法优化到插件配置与调试的全流程。通过实战案例和避坑技巧,帮助开发者高效实现机器人导航中的全局路径规划,特别适合需要优化ROS导航栈的开发者。

weixin_29168675的博客 285

FPGA音频处理入门:手把手教你用Verilog实现I2S接收模块(附完整代码)

本文详细介绍了如何使用Verilog在FPGA上实现I2S接收模块,涵盖I2S协议原理、Verilog架构设计、完整代码实现及优化技巧。通过实战案例,帮助开发者快速掌握数字音频处理技术,适用于嵌入式音频系统开发。

weixin_30335575的博客 418

CentOS系统下Apache Ant自动从SVN获取代码并通过Tomcat集群发布工程

关于利用Ant自动从SVN服务器获取代码并通过Tomcat服务器集群发布工程的过程,涉及到Shell编程、Ant服务器配置、SVN服务器配置、Apache httpd服务器、Tomcat集群服务器的配置,相关配置请了解其他博客。         一、相关服务器配置说明:           1、Apache httpd与Tomcat服务器集群配置:http://blog.youkuaiyun.com/li

秋风瑟瑟 3359

计算机模拟爆破过程,基于LSDYNA岩石爆破模拟建模分析

原标题:基于LSDYNA岩石爆破模拟建模分析 Ls Dyna岩石爆破模拟仿真作者:dyna_focus擅长领域:dyna/abaqus/hypermesh一、 数值模型的建立1.1 单元及算法的选择岩石,炸药,空气都采用solid164实体单元。岩石采用常应力实体单元,该种单元属于纯粹的lagrange算法,该种算法单元网格附着在材料上,随着材料的流动而产生单元网格的变形,但是在结构变形巨大时,有...

weixin_29494379的博客 7317

java 获取ant,从Java运行ant

Is there a tutorial on how to run Ant from Java? I got some code from here: Setting JAVA_HOME when running Ant from JavaBut haven't been able to make it work. I've been trying to find an example or tu...

weixin_35346265的博客 175

深入CRSF协议数据包:手撕STM32代码,教你像调试串口一样分析ELRS遥控数据流

本文深入解析CRSF协议数据包,通过手撕STM32代码,教你如何像调试串口一样分析ELRS遥控数据流。从硬件准备到数据包捕获状态机设计,再到高级数据分析技巧和实战应用,全面覆盖CRSF协议的解析与优化,帮助开发者构建稳定可靠的通信系统。

weixin_29194693的博客 337

光学材料仿真软件:FDTD Solutions_(4).材料属性的定义与应用

在光学材料仿真软件中,材料属性的定义和应用是至关重要的一步。正确地定义材料属性可以确保仿真结果的准确性和可靠性。本节将详细介绍如何在FDTD Solutions中定义和应用不同的材料属性,包括介质材料、金属材料、色散材料等,并提供具体的代码示例和数据样例。介质材料是光学仿真中最常见的材料类型之一。在FDTD Solutions中,可以通过多种方式定义介质材料,包括使用预定义的材料库、自定义材料参数或导入材料数据文件。FDTD Solutions内置了一个丰富的材料库,包含了许多常用材料的光学性质。

kkchenjj的博客 1402

ant 与svn

地址:http://tieba.baidu.com/p/800871177 构建的定义:构建就是把源代码转换成class文件的过程 构建解决的问题:研发给的class进行部署,然后我们就会发现研发给的东东有许多错误;给的class文件不是最新的;更甚至一个项目需要多个工程进行合并才能运行. 为什么要构建:一般研发是通过IDE工具进行构建的,当研发给出的错误的class文件时,压根

zsw2zkl的专栏 4849

YOLOv5改进之---EIoU,SIoU,AlphaIoU,FocalEIoU,Wise-IoU

本文主要针对yolov5的iou损失函数进行改进,主要涵盖EIoU,SIoU,AlphaIoU,FocalEIoU,Wise-IoU这几种损失

qq_41920323的博客 1466

linux下使用Ant编译java web项目

苟且,诗与远方 本博客是介绍使用Ant打包svn上面的web项目到linux下的tomcat运行 注意事项 1:windows下的java文本在linxu上不兼容,下面有介绍dos2unix转码 2:不能单个java文件打包,需要结合jar包 3:如果是从svn下载的项目要删除.svn隐藏文件 4:这里不打war包了,因为war包会带有软链接或是不小心少文件个人不喜欢 前期准备 需...

星光的JAVA开发之路 2253

8、Windows 部署ollama

一个本地运行大模型的集成框架,目前主要针对主流的LLaMA架构的开源大模型设计,通过将模型权重、配置文件和必要数据封装进由Modelfile定义的包中,从而实现大模型的下载、启动和本地运行的自动化部署及推理流程。此外,Ollama内置了一系列针对大模型运行和推理的优化策略,目前作为一个非常热门的大模型托管平台,已被包括LangChain、Taskweaver等在内的多个热门项目高度集成。

Andy_shenzl的博客 1131

OCR技术解析:用Tesseract和PaddleOCR识别文本

OCR技术解析:用Tesseract和PaddleOCR识别文本 ,人工智能,计算机视觉,大模型,AI,光学字符识别(Optical Character Recognition,简称 OCR)是一项将图片、扫描件等文档中的文字信息转换为可编辑文本的技术。在数字化时代,OCR 技术广泛应用于文档处理、车牌识别、身份证识别、古籍数字化等领域,极大地提高了文字信息处理的效率。Tesseract 和 PaddleOCR 是两款极具代表性的 OCR 工具。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 3万+
上一篇: 使用Apache Ant编译打包运行Java项目
下一篇: 采用freemarker静态化页面以及freemarker视图展现简介
johnsearcher
博客等级 码龄17年 12粉丝 55原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值