我有 3 个具有相同实体的 Java 项目。
我想在这些项目之间共享实体,因为实体可以在开发阶段演变。
我们正在考虑用实体构建一个 jar 并使用 Maven(带有存储库)共享它。
也许你有另一个解决方案?
我有 3 个具有相同实体的 Java 项目。
我想在这些项目之间共享实体,因为实体可以在开发阶段演变。
我们正在考虑用实体构建一个 jar 并使用 Maven(带有存储库)共享它。
也许你有另一个解决方案?
我也可以推荐使用 Maven 在项目之间共享代码。
以下是一些入门提示:
如果您想共享通用接口、类、功能或组件,Maven 是您的最佳选择。除了依赖管理之外,您还可以获得标准项目布局的额外好处,这将简化事情。与最常见的持续集成服务器和标准发布过程的轻松集成是进一步的好处。
一定要看看Maven!
制作自己的 JAR 库绝对是一个很好的解决方案。
问候
实体是给定对象的表示我正确吗?如果是这样,Java 实现的默认机制是对象序列化 - http://en.wikipedia.org/wiki/Serialization。对于 jar 文件,如果实体发生更改,您每次也必须再次更改 jar。这可能很乏味。
在roo中生成一个标准的war文件。但是然后将它的包更改为jar文件。
然后从任何标准的战争文件中,您可以部署这个 jar(我将使用 jar 作为 maven 依赖项)。我将维护一个唯一命名的 applicationConext,例如 PizzaShop-applicationContext.xml 和 PizzaShop-applicationContext-jpa.xml。所以从一个父 spring 项目中,我可以以这种方式堆叠各种 roo 项目。
我还会保留他们生成的 webapps 文件夹,以便生成器更轻松地工作。(这意味着我必须打开 pom.xml 并不断将其改回 jar)。还有助于为非 roo 生成的战争文件 web.xml 条目添加剪切和粘贴素材。
似乎这可能是关于 roo 的一个令人困惑的点。您可以像任何春季项目一样混合和匹配这些罐子。它们的功能类似于独立的弹簧单元,并且在相同的 webapp/web.xml 上下文中与其他弹簧罐并排工作。
它很乏味,但仍然比手动编写 spring 代码更好。