我正在使用Hibernate,Maven和Eclipse(STS构建)来构建项目。我正在使用hbm.xml文件来指定我的架构。我想使用Hibernate的hbm2java来生成我的模型类。我有它运作良好并生成我想要的代码。
它从命令行运行完美,生成模型代码,然后按预期构建和测试。
然而,Eclipse似乎无法处理它。它将定期“失去理智”并且无法解决我的DAO类中引用的非常简单的导入和类,这些类是手动编码的。它找不到的东西是像HibernateUtil这样的类。具有讽刺意味的是,它似乎没有找到模型类的麻烦。
未解决的类在运行结束时位于target / classes / blah-blah文件夹中。所以他们显然被复制到了正确的地方。
在“持续集成”环境中,最好是生成一次源,将它们提交到我的版本控制,然后禁用代码生成?或者是否可以每次生成代码,从而确保我在没有人为干预的情况下获取任何数据库更改?
答案 0 :(得分:5)
从一开始就生成它们可能是一个让你入门的选择,但是一旦生成它们,就会手工制作它们并且不再生成它们。在架构更改时添加必要的属性和方法,并重构现有代码。
顺便说一句,我真的更喜欢使用注释来进行映射,因为它不那么冗长,不易出错,并且所有信息都在一个地方。答案 1 :(得分:0)
试试这个:
从命令行遍历到项目pom.xml
所在的项目目录并运行:
mvn eclipse:clean eclipse:eclipse
如果它说无法找到插件日食,那么试试:
mvn eclipse:install-plugin
首先再尝试上面的命令。
通过这种方式,所有maven和项目依赖项也将在eclipse级别解析。
如果这不是你想要的,请告诉我。