ant build.xml 求助
今天刚开始用ant 目前遇到一个问题 比较纳闷。 废话不多说 直接上文件
- XML code
<?xml version="1.0" encoding="UTF-8"?><project name="HelloWorld" basedir="."> <property name="src.dir" value="${basedir}\src" /> <property environment="env" /> <property name="jboss.home" value="${env.JBOSS_HOME}" /> <property name="jboss.server.config" value="default" /> <property name="build.dir" value="${basedir}\build" /> <path id="build.classpath"> <fileset dir="${jboss.home}\client"> <include name="*.jar" /> </fileset> <pathelement location="${build.dir}"/> </path> <target name="prepare"> <delete dir="${build.dir}" /> <mkdir dir="${build.dir}" /> </target> <target name="compile" depends="prepare" description="编译"> <!-- javac编译这行报错了 --> <javac srcdir="${src.dir}" destdir="${build.dir}" includeantruntime="on"> <classpath refid="build.classpath" /> </javac> </target> <target name="ejbjar" depends="compile" description="创建EJB发布包"> <jar destfile="${basedir}\${ant.project.name}.jar"> <fileset dir="${build.dir}"> <include name="**/*.class" /> </fileset> </jar> </target> <target name="deploy" depends="ejbjar" description="发布ejb"> <copy file="${basedir}\${ant.project.name}.jar" todir="${jboss.home}\server\${jboss.server.config}\deploy" /> </target> <target name="name" description="卸载ejb"> <delete file="${jboss.home}\server\${jboss.server.config}\deploy\${ant.project.name}.jar" /> </target></project>报了这样一个错
BUILD FAILED
D:\eclipse-j2ee-workspace\HelloWorld\build.xml:23: D:\eclipse-j2ee-workspace\HelloWorld\${env.JBOSS_HOME}\client does not exist.
- XML code
<javac srcdir="${src.dir}" destdir="${build.dir}" includeantruntime="on"> <classpath refid="build.classpath" /> </javac>这块这个<classpath> 我引用的是上边的
- XML code
<path id="build.classpath"> <fileset dir="${jboss.home}\client"> <include name="*.jar" /> </fileset> <pathelement location="${build.dir}"/> </path>而这个<fileset> 的dir 我用的是 上边的属性
- XML code
<property name="jboss.home" value="${env.JBOSS_HOME}" />所以 我不知道错误信息里边的D:\eclipse-j2ee-workspace\HelloWorld\${env.JBOSS_HOME}\client does not exist.
是哪来的?
求看出来的高手指点迷津
[解决办法]
${basedir}会默认当前目录
${env.JBOSS_HOME} 需要你配置,在操作系统环境变量下,或DOS下用set env.JBOSS_HOME=Jboss目录
[解决办法]
先解释下各个属性的意思:
第一:<property name="jboss.home" value="${env.JBOSS_HOME}" />
这个肯定是系统jar包所在的环境
也就是<fileset dir="${jboss.home}\client">红色
部分的路径代表项目jar包所在的路径
楼主的错误描述的是配置的路径不存在,那问题很明显就是
dir="${jboss.home}\client">配置的不正确
建议楼主将jboss.home变量的value值写成绝对路径。
然后用echo命令在控制台输出一下 看路径输出是否正确。
<echo>jboss.home值为${jboss.home}\client</echo>
仅供参考