我正在使用ANT来运行我的项目,我的hibernate.cfg.xml
和log4j.properties
文件位于我的一个名为/config
的自定义文件夹下,当我从ant运行任务时,由于hibernate.cfg.xml is not found
并显示log4j appenders warnings
。无论如何,可以在您的自定义文件夹下查看这些文件的ant,而不是将其放在src
下。
目标名称 -
<target name="controlGRID" depends="compile">
<echo>
Please wait .... GRID is starting up...
</echo>
<java classname="foo.bar.framework.selenium.SetupGrid" classpath="${test.dest}" classpathref="test.c">
<arg value="${arg}"/>
</java>
<echo>
GRID Start up complete !
</echo>
</target>
Classpath -
<target name="setClassPath" unless="test.classpath">
<path id="classpath_jars">
<fileset dir="${ws.jars}" includes="*.jar"/>
<!--<pathelement path="${foobar.config}"/>-->
<pathelement location="${foobar.config}"/>
<fileset dir="${foobar.config}">
<include name="hibernate.cfg.xml"/>
<include name="log4j.properties"/>
</fileset>
</path>
Hibernate配置序列 -
hibernateConfig = new Configuration();
hibernateConfig.configure ();
StandardServiceRegistryBuilder ssrb = new StandardServiceRegistryBuilder().applySettings(hibernateConfig.getProperties());
hibernateSessionFactory = hibernateConfig.buildSessionFactory(ssrb.build());
答案 0 :(得分:0)
我研究过我的hibernate类并找到了解决方案:
hibernateConfig = new Configuration();
hibernateConfig.configure (new File(System.getProperty("user.dir")+"/config/hibernate.cfg.xml"));
StandardServiceRegistryBuilder ssrb = new StandardServiceRegistryBuilder().applySettings(hibernateConfig.getProperties());
hibernateSessionFactory = hibernateConfig.buildSessionFactory(ssrb.build());
前面我的代码是 -
hibernateConfig.configure();
我将其改为 -
hibernateConfig.configure (new File(System.getProperty("user.dir")+"/config/hibernate.cfg.xml"));
嗯,我找到了答案,我希望它也可以帮助其他人。