如何在 ant 脚本中排除和包含任务
how to excludes and include task in ant script
我只想使用 ant 脚本复制特定的 jar 文件。这是非常容易的任务,但我无法做到这一点。我为此任务编写了以下 ant 脚本。我想排除除 aopalliance-.jar 文件之外的所有 jar 文件。但是当我 运行 这个脚本时它排除了所有的 jar 文件。有人可以更正这个脚本吗?
<?xml version="1.0" encoding="UTF-8"?>
<project default="mvcexample" name="MVCExample" basedir=".">
<property name="web.dir" value="WebContent" />
<property name="webinf.dir" value="WebContent/WEB-INF" />
<property name="lib.dir" value="WebContent/WEB-INF/lib" />
<property name="lib2.dir" value="WebContent/WEB-INF/lib2" />
<target name="copyjar">
<copy todir="${lib2.dir}">
<fileset dir="${lib.dir}" excludes="**/*.jar">
<include name="${lib.dir}/aopalliance-.jar"></include>
</fileset>
</copy>
</target>
</project>
这是您需要做的:
<target name="copyjar">
<copy todir="${lib2.dir}">
<fileset dir="${lib.dir}">
<!-- <include name="${lib.dir}/aopalliance-.jar"/> -->
<include name="aopalliance-.jar"/> <!-- Don't put the dir name! -->
</fileset>
</copy>
</target>
指定目录时,只需指定该目录下的名称模式即可。您要的是罐子 ${lib.dir}/${lib.dir}/aopalliance-.jar
。顺便问一下,那里某处应该有版本号吗?喜欢 aopalliance-3.4.jar
?如果是这样,您需要 <include name="aopalliance-*.jar"/>
.
另请注意,如果我使用 <include .../>
而不是 <include...></include>
。
我只想使用 ant 脚本复制特定的 jar 文件。这是非常容易的任务,但我无法做到这一点。我为此任务编写了以下 ant 脚本。我想排除除 aopalliance-.jar 文件之外的所有 jar 文件。但是当我 运行 这个脚本时它排除了所有的 jar 文件。有人可以更正这个脚本吗?
<?xml version="1.0" encoding="UTF-8"?>
<project default="mvcexample" name="MVCExample" basedir=".">
<property name="web.dir" value="WebContent" />
<property name="webinf.dir" value="WebContent/WEB-INF" />
<property name="lib.dir" value="WebContent/WEB-INF/lib" />
<property name="lib2.dir" value="WebContent/WEB-INF/lib2" />
<target name="copyjar">
<copy todir="${lib2.dir}">
<fileset dir="${lib.dir}" excludes="**/*.jar">
<include name="${lib.dir}/aopalliance-.jar"></include>
</fileset>
</copy>
</target>
</project>
这是您需要做的:
<target name="copyjar">
<copy todir="${lib2.dir}">
<fileset dir="${lib.dir}">
<!-- <include name="${lib.dir}/aopalliance-.jar"/> -->
<include name="aopalliance-.jar"/> <!-- Don't put the dir name! -->
</fileset>
</copy>
</target>
指定目录时,只需指定该目录下的名称模式即可。您要的是罐子 ${lib.dir}/${lib.dir}/aopalliance-.jar
。顺便问一下,那里某处应该有版本号吗?喜欢 aopalliance-3.4.jar
?如果是这样,您需要 <include name="aopalliance-*.jar"/>
.
另请注意,如果我使用 <include .../>
而不是 <include...></include>
。