基本上,我有一个‘基础’代码,这是程序的主体,并希望能够添加单独的库/模块/基于每个‘客户’的个人需求的类。在设置程序时,我将选择版本(base、customer1、customer2)。这是一个运行在Java1.8 tomcat7 apache服务器上的基于webbed的服务。
有可能发生这样的事情吗?
编辑:一些定制小到一个新字段、一个新方法或一个新类。
发布于 2017-02-03 14:43:28
如果我错了,请纠正我,但听起来你想要一些核心代码到你的系统中,然后你可以添加功能,以便为特定客户定制它。
定制可以通过使用OSGI框架(如apache felix或equinox(内置于eclipse) )编写代码来实现。这些框架表面上是插件框架,允许您动态添加和删除模块,但它也允许您将代码作为单独的包来编写,这些包可以根据您的规范进行组合。here是一个很好的使用equinox的教程。
关于自动化每个客户的定制任务,这可能值得你花时间研究一下像Chef这样的东西,它用于服务器软件的自动配置,比如apache或mysql,它将允许你为每个客户单独定制写一个“菜谱”。一旦编写了各种OSGI插件,您所要做的就是编写一个脚本,将它们放在一起并运行它,之后您可以将定制的软件发送给客户。
https://stackoverflow.com/questions/42016616
复制相似问题