日期:2014-05-18  浏览次数:20780 次

请问javac编译时引用了框架,运行时还需要引用吗?
自己编写了个java测试类,其中引用了hibernate框架
用ANT写了编译和运行的任务

<?xml version="1.0"?>
<project basedir="." default="test" name="testproject">
<property name="lib.dir" value="lib" />
<path id="classpath">
    <fileset dir="${lib.dir}">
    <include name="**/*.jar" />
</fileset>
</path>
<target name="bot">
    <javac destdir="${basedir}/Model">
        <src path="${basedir}" />
<classpath refid="classpath" />
</javac>
</target>
<target name="exc">
    <java classname="NewsManager">
    <classpath>
<pathelement path="${basedir}/Model" />
</classpath>
</java>
</target>
</project>

运行exc任务的时候是否应增加下面的引用?先谢过了
<classpath refid="classpath" />

------解决方案--------------------
引用:
     [java] org.hibernate.MappingNotFoundException: resource: Model/News.hbm.xml not found
     [java]……

xml文档需要在构建的时候送入classes目录中。
以下任务需要和javac一起做:
<copy todir="${basedir}/Model">
<fileset dir="${basedir}">
<include name="**/*.properties" />
<include name="**/*.xml" />
</fileset>
</copy>
对了,顺便说一句,把classes目录指定为${basedir}/Model不好,最好换个${basedir}以外的目录。