ant的classpath元素

classpath元素classpath就是指定我们运行java的时候所需要的类.比如jar包之类的 注意,classpath的指定可以是文件,或者是某个文件夹

<classpath>可以内嵌 <pathelement>、<path>、<fileset>、<filelist>、<dirset>等元素

1.pathelement

pathelement元素的path属性指向的不是一个预先定义的<path>,而是一个符合classpath规则的property

例如:

 

<property name="project.jar.path" value="D:/temp/temp.jar;D:/temp/temp1.jar" />
<classpath id="test">
       <pathelement path="${project.jar.path}" />
 </classpath>
<!--正确使用-->

错误使用:

 

误认为path应该指向一个预先定义的path是不正确的

 

<path id="classpath">
    <fileset dir="${project.lib.path}">
	<include name="**/*.jar" />
    </fileset>
</path>

<classpath id="testclass">
    <!--此处使用错误-->
    <pathelement path="${classpath}" />
    <!--正确使用-->
    <pathelement  refid="classpath" />
</classpath>

 注意:refid="classpath"不适没有${classpath}

 location指定的是一个jar文件或者一个目录,与path区别为location可以去当前路径,当然可以使用绝对路径

 

<property name="project.jar.path" value="D:/temp/temp.jar;D:/temp/temp1.jar" />
<classpath>
    <pathelement path="${project.jar.path}" />     
    <pathelement location="lib/helper.jar"/>
</classpath>
 

 

2.fileset

是一个文件夹,可以采用匹配模式来引入,这个适合在同一个文件夹下,文件名字比较多的情况下

 

<classpath>
    <fileset dir="lib">
        <include name="**/*.jar" />
    </fileset>
</classpath>

 

3.filelist

是一个文件集合适合引入不同路径的jar包,但是需要输入每个jar包的名字,比较繁琐,适合于jar包属于不同位置,比较分散但是不多的情况

<filelist id="third-party_jars" dir="${basedir}" files="foo.jar, bar.jar"/>
<classpath>
    <filelist refid="third-party_jars" />
</classpath>

 4.dirset

 

<classpath>
    <dirset dir="${build.dir}">
        <include name="apps/**/classes" />
        <exclude name="apps/**/*Test*" />
    </dirset>
</classpath>

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值