ant+ivy

ivy的中文资料很少,英文不过关又想做jar依赖的,还是乖乖maven。

项目右键->ivy files创建

ivy.xml

<?xml version="1.0" encoding="utf-8"?>
<ivy-module version="2.0">
    <info organisation="antivy_test" module="antivy_test"/>
    <configurations>
    
    </configurations>
    <dependencies>
        <dependency org="commons-lang" name="commons-lang" rev="2.0" /> <!-- conf="default->master" ,不会下载doc和sources的jar-->
        <dependency org="commons-cli" name="commons-cli" rev="1.0"/>
        <dependency org="org.apache.commons" name="commons-collections4" rev="4.0"/>
    </dependencies>
</ivy-module>

项目右键-》export-》ant builderfiles创建

build.xml

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project name="antivy_test" default="warFile" basedir="." xmlns:ivy="antlib:org.apache.ivy.ant">

	
	<!-- ====== target: resolve ========== -->
	<target name="resolve" description="--> retreive dependencies with ivy">
		<ivy:retrieve  pattern="${ivy.lib.dir}/[artifact]-[type]-[revision].[ext]"/>
	</target>

	<!-- 定义属性,打成war包的名称。 -->
	<property name="warFileName" value="antivy_test.war">
	</property>
	
	<property name="ivy.lib.dir" value="${basedir}/WebRoot/WEB-INF/lib">
	</property>
	
	<property name="ivy.build.dir" value="${basedir}/WebRoot/WEB-INF/classes">
	</property>
	
	<!-- 定义路径,编译java文件时用到的jar包。 -->
	<path id="project.lib">
		<fileset dir="${basedir}/WebRoot/WEB-INF/lib">
			<include name="**/*.jar" />
		</fileset>
	</path>
	<!-- 定义任务,清空任务:清空原有的class文件,创建新的build路径。 -->
	<target name="clean">
		<delete dir="${basedir}/WebRoot/WEB-INF/classes" />
		<mkdir dir="${basedir}/WebRoot/WEB-INF/classes" />
	</target>

	<!-- 定义任务,编译src文件夹中的java文件,编译后的class文件放到创建的文件夹下。 -->
	<target name="compile" depends="clean">
		<javac srcdir="${basedir}/src" destdir="${basedir}/WebRoot/WEB-INF/classes" includeantruntime="false">
			<classpath refid="project.lib">
			</classpath>
		</javac>
		<copy todir="${basedir}/WebRoot/WEB-INF/classes">
			<fileset dir="${basedir}/src">
				<include name="**/*.properties" />
			</fileset>
		</copy>
	</target>

	<!-- 定义默认任务,将class文件集合成jar包。 -->
	<target name="warFile" depends="resolve,compile">
		<!-- 删除原有war包。 -->
		<delete dir="${basedir}/war/${warFileName}" />
		<!-- 建立新war包。 -->
		<war destfile="${basedir}/war/${warFileName}" webxml="${basedir}/WebRoot/WEB-INF/web.xml">
			<!-- 将非jar和非class文件拷贝到war包的对应路径下。 -->
			<fileset dir="${basedir}/WebRoot">
				<include name="**/**.*" />
				<exclude name="**/*.jar" />
				<exclude name="**/*.class" />
			</fileset>
			<!-- 将jar和class文件拷贝到war包的对应路径下。 -->
			<lib dir="${basedir}/WebRoot/WEB-INF/lib" />
			<classes dir="${basedir}/WebRoot/WEB-INF/classes" />
		</war>
	</target>
	 <target name="clearIvyCache"  description="description">    
	            <ivy:cleancache/>
	 </target>
</project>


build.xml右键,run as-》ant build ,可能出现编码错误,在windows->preferences->worksapces->test file encoding设置utf-8


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值