我仍然是Maven的新手,我终于有了我想要的东西,但现在我需要再次打破它。
以下是我的场景:
我需要编写两个不同的服务器应用程序,它们使用相同的核心功能;只是,使用该框架所做的事情是非常不同的。一个服务器应用程序非常简单--它已经完成了--而另一个则要复杂得多。
代码是以依赖注入风格编写的(如果重要的话,可以使用Guice ),因此它应该非常容易拆分。
我的问题是:如何使用Maven在Eclipse中构建项目结构?您是否会设置三个不同的项目,例如:
server-core
server-appEasy
server-appComplicated每台服务器都有自己的pom。或者,您会将所有这些都放在一个项目中吗?当我在appComplicated上工作时,我需要能够在一个月后轻松地重新编译appEasy。appEasy的类已经在一个子包中。注意:如果没有至少一个模拟依赖注入,core将无法单独工作。它没有main类。
所有的想法都值得欣赏,即使是在我没有想到的事情上。
发布于 2013-02-08 23:35:13
我会有一个这样的结构:
/server
/server-core
pom.xml
/server-appeasy
pom.xml
/server-appcomplicated
pom.xml
pom.xml但是,父文件夹也有一个pom.xml,如果运行,它将构建所有项目。您可以通过将项目作为模块包含在父pom中来完成此操作。
例如,在父pom.xml中
<modules>
<module>server-core</module>
<module>server-appeasy</module>
<module>server-appcomplicated</module>
</modules>您还可以在父pom tio中使用托管依赖项,允许您集中外部依赖项和插件版本号。
发布于 2013-02-08 23:38:42
我建议将所有内容构建为一个Maven多模块项目。
父项目将有三个项目作为模块,第三方依赖版本,以及项目的版本作为属性。
然后,在server-appComplicated和server-appEasy中,我将向server-core添加一个依赖项。
通过这种方式,您将获得: 1-要编译的根项目(父项目),它将生成两个服务器和core-lib。2-处理版本号和公共依赖关系的点。
我希望它能帮上忙
发布于 2013-02-08 23:24:50
我不是专家,但这里是我的2分钱。每个项目都需要自己的pom。你需要一起构建所有的项目吗?在这种情况下,拥有一个具有所有公共依赖项的父pom可能是有意义的。
编辑:在这种情况下,我觉得每个项目只有三个独立的3pom文件。
https://stackoverflow.com/questions/14775755
复制相似问题