最代码官方的gravatar头像
最代码官方2018-03-23 00:25:57
IntelliJ IDEA下如何设置maven项目中hbm xml文件到编译发布目录文件夹下

今天在IntelliJ IDEA下运行一个maven项目,该项目是s2sh开发的,hibernate是用的很早的hbm xml设置的bean和mysql数据库映射关系,一路配置完成后,发现运行是抛出如下异常:

Caused by: org.hibernate.MappingNotFoundException: resource: cn/itcast/entity/SysCode.hbm.xml not found
	at org.hibernate.cfg.Configuration.addResource(Configuration.java:665)
	at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1679)
	at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1647)
	at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1626)
	at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1600)
	at org.hibernate.cfg.Configuration.configure(Configuration.java:1535)
	at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:642)
	at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1469)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409)
	... 59 more

而在hibernate.cfg.xml配置文件中,该hbm xml文件的路径设置是正确的,而且文件也确实存在

IntelliJ IDEA下如何设置maven项目中hbm xml文件到编译发布目录文件夹下

然后在debug模式在断点,查看hibernate启动加载hbm xml文件的类时,发现他是在target目录去查找的文件

IntelliJ IDEA下如何设置maven项目中hbm xml文件到编译发布目录文件夹下

该目录下确实没有对应的hbm xml文件

IntelliJ IDEA下如何设置maven项目中hbm xml文件到编译发布目录文件夹下
IntelliJ IDEA下如何设置maven项目中hbm xml文件到编译发布目录文件夹下

于是通过搜索找到解决方案,因为该项目是maven项目,需要maven build发布到target目录,所以通过设置pom.xml就可以解决

<build>
    <finalName>jk1107</finalName>
      <resources>
          <resource>
              <directory>src/main/java</directory>
              <includes>
                  <include>**/*.xml</include>
              </includes>
              <filtering>false</filtering>
          </resource>
      </resources>
  </build>

IntelliJ IDEA下如何设置maven项目中hbm xml文件到编译发布目录文件夹下

再次build或者run项目就成功了。

IntelliJ IDEA下如何设置maven项目中hbm xml文件到编译发布目录文件夹下

IntelliJ IDEA下如何设置maven项目中hbm xml文件到编译发布目录文件夹下

enjoy it,遇到问题不要只看到表面,大部分原因是因为你个人姿势不对,而不是外部环境原因。


打赏

已有2人打赏

dongsir的gravatar头像程序猿全敏的gravatar头像

分享到:

最近浏览
libingshen LV1昨天
星星
caozhongjue1 LV77月4日
月亮星星星星星星
gtlishujie LV27月4日
星星星星
二十八画 LV56月26日
月亮星星
義什么義6月12日
暂无贡献等级
1271214130qq6月1日
暂无贡献等级
liu83428190 LV65月29日
月亮星星星星
767691413 LV25月22日
星星星星
tokeng LV15月15日
星星
江小鱼 LV65月7日
月亮星星星星
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友