gpt4 book ai didi

java - 如何在不同项目之间共享公共(public)代码?

转载 作者:行者123 更新时间:2023-12-02 05:47:28 24 4
gpt4 key购买 nike

我想要 2 个不同的项目:一个连接到 Web 服务,另一个项目处理导入。

这两个项目将针对相同的最终应用程序运行,但应分别在不同的服务器上运行。此外,每个项目都应该能够独立发布(例如,如果我修复了导入器上的错误,我必须在不引用 webservice 项目的情况下发布它)。

项目应该共享一些代码,例如域类。我应该使用哪种 Maven 结构来实现此目的?3 个独立项目,而 commons 安装到本地 Maven 存储库并被其他项目用作依赖项

或者是否可以通过某种方式直接从 eclipse 工作区解析 commons 项目而无需安装它?

svn/Webservice/pom.xml
svn/Cache-Importer/pom.xml
svn/Commons/pom.xml //used by both projects and contains eg shared domain code

最佳答案

正如您所猜测的,我会推荐三个独立项目模型。 Webservice 和 Cache-Importer 项目将依赖于 Commons。将它们作为单独的项目允许您为这些项目拥有不同的生命周期,并且您可以发布其中一个,但不能发布另一个。

如果您想将它们放在同一个聚合器中,这将使您必须将它们全部发布在同一版本下,并且某些模块当时可能不需要版本更新。因此,在我看来,这将是一个更好的方法。

如果您想将它们一起构建,但也希望将它们作为独立的模块,您可以创建第四个项目,将它们定义为 <modules/>pom.xml 。您需要设置svn:externals (如解释 here )并基本上将模块的路径链接到该项目。这样您就可以完全检查它们并构建它们,同时您也可以独立发布它们。

关于java - 如何在不同项目之间共享公共(public)代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23913346/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com