Java Maven for Rich Client中的多模块项目
我想知道是否有人对如何最好地继续使用Maven和多模块富客户机应用程序(比如说Java Swing)有什么建议 要求是应用程序的某个核心部分存在于某种核心项目中。如果你运行这个核心项目,你仍然可以看到一些东西,比如说,在一个选项卡式窗格中有一堆不同的子模块作为选项卡 核心是可运行的,并显示了一些每个人都通用的核心GUI模块 一个客户可能是一个总线运营商,收到一个配置并看到类似的内容 …而另一位客户可能是一家宠物店,他们会看到这样的情况: 什么是最好的Maven方法 关于超级大国,什么是最好的办法。据我所知,您可以拥有项目继承和项目聚合 使用继承并让所有模块从核心项目继承会更好吗 --->岩心聚甲醛 --------Tarif模块POM(运输公司用) --------路线模块POM(针对运输公司) --------Cat模块POM(用于宠物店) --------狗模块POM(用于宠物店) 然后,所有子项目都将引用super,如下所示:Java Maven for Rich Client中的多模块项目,java,swing,maven,Java,Swing,Maven,我想知道是否有人对如何最好地继续使用Maven和多模块富客户机应用程序(比如说Java Swing)有什么建议 要求是应用程序的某个核心部分存在于某种核心项目中。如果你运行这个核心项目,你仍然可以看到一些东西,比如说,在一个选项卡式窗格中有一堆不同的子模块作为选项卡 核心是可运行的,并显示了一些每个人都通用的核心GUI模块 一个客户可能是一个总线运营商,收到一个配置并看到类似的内容 …而另一位客户可能是一家宠物店,他们会看到这样的情况: 什么是最好的Maven方法 关于超级大国,什么是最好
<parent>
<artifactId>CoreUI</artifactId>
<groupId>com.huwag</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
科雷伊
com.huwag
1.0-快照
然后,其他一些外部项目将构建特定于客户机的jar。(这就是我不确定的地方…使用继承,如何创建特定于一个客户的配置)
或者。。。。。使用项目聚合是否更好。从这个意义上讲,我的意思是每个超级POM都是特定于客户机的模块的集合。像这样:
--->运输公司
--------Tarif模块POM
--------路由模块POM
--->宠物店
--------Cat模块POM
--------狗模块
--->核心POM(将在其他两个中引用)
com.huwag
MyPetStore
聚甲醛
狗粮
猫币
核心
我认为后者是更好的选择。对我来说,我喜欢这个选项,因为我可以为客户构建更好的特定包装。例如,一个客户端可能希望他的应用程序打包在webstart中,另一个客户端可能希望它打包在小程序中
如果有人能在Maven项目结构方面帮助我,那就太好了
欢迎有经验的任何其他建议。是否有人使用OSGi选项将GUI部分粘合在一起?包装是如何工作的?等等。您可以在和的帮助下尝试OSGI方法。在这种情况下,您可以为所有客户机使用一些核心模块,为每个客户机使用一些特定的插件,这些插件将加载到框架GUI中。按照类似的思路,如果您的Maven配置将Spring
@Component
带到类路径上,则应用程序上下文可以拾取它们。我们在这方面非常成功。
<project>
<groupId>com.huwag</groupId>
<artifactId>MyPetStore</artifactId>
<packaging>pom</packaging>
<modules>
<module>DogComponent</module>
<module>CatCopmonent</module>
<module>Core</module>
</modules>
</project>