Gradle compileJava任务跳过Hibernate映射文件
在我的gradle.properties文件中,classesDir被设置为/WEB-INF/classes。但由于某些原因,只有编译的*.class文件被复制到那里,忽略了位于java文件旁边的*.hbm.xml文件(在com.project.model子文件夹中) 因此,由于缺少映射文件,应用程序服务器(Tomcat 8)无法正常启动。我的配置有什么问题 谢谢,Gradle compileJava任务跳过Hibernate映射文件,gradle,hibernate-mapping,Gradle,Hibernate Mapping,在我的gradle.properties文件中,classesDir被设置为/WEB-INF/classes。但由于某些原因,只有编译的*.class文件被复制到那里,忽略了位于java文件旁边的*.hbm.xml文件(在com.project.model子文件夹中) 因此,由于缺少映射文件,应用程序服务器(Tomcat 8)无法正常启动。我的配置有什么问题 谢谢, 生命。更新: 我添加了一个单独的任务makeJava来复制映射文件,然后将其用作compileJava的依赖项,如下所示: tas
生命。更新: 我添加了一个单独的任务makeJava来复制映射文件,然后将其用作compileJava的依赖项,如下所示:
task copyHbm(type: Copy) {
from 'src/com/project/model'
into classesDir + '/com/project/model/'
include '**/*.hbm.xml'
}
task makeJava(dependsOn: [compileJava, copyHbm])
copyHbm.mustRunAfter compileJava
谢谢你的帮助
build\u dir
不是标准的Gradle属性,因此您必须解释构建如何使用该属性。另外,您还必须解释*.hbm.xml
源文件的位置。我已经修改了原始文本。很抱歉造成混淆。资源文件应放在单独的源目录中(默认情况下,src/main/resources
)。当它们与Java源代码混合在一起时,使它们工作起来就更困难了。此外,资源处理与compileJava
任务无关。