Ken*_*ent 31 java deployment spring maven
很多java应用程序都是用maven构建的.maven有Profiles概念,为不同的环境构建发行包非常方便.例如dev/test/prod使用不同的path / jndiname / security rule / properties files......我想我不必在这里列出代码来解释它.
Spring是一个非常好用的java开发框架,因为spring3它也支持profile概念.
现在问题来了,为了释放到不同的ENV目的,哪一个更好?现在我更喜欢maven个人资料.因为spring必须复制每个配置文件中的每个bean定义.它需要一个初始化器/属性来让spring知道哪个配置文件应该被激活.
但我觉得弹簧轮廓比maven轮廓更灵活.
你怎么看?请给出一些建议.谢谢.
Fil*_*lto 36
Maven配置文件将提供构建时解决方案,而SpringFramework配置文件将提供运行时替代方案.我认为这是人们可能会问自己的第一个问题:如果他想要一个可以部署在不同环境中的软件包,或者他希望构建工具根据目标环境提供不同的软件包.
要记住的一件事是,如果将不同的软件包部署到不同的服务器中,可能会出现许多问题.例如,在我的工作场所,如果我正在部署程序包以纠正以前在生产环境中发生的错误,公司策略将声明唯一可接受的情况是我在QA和生产服务器中具有相同的解决方案包.
正如其他回复中所提到的:这一切都取决于你的工作方式:)
我们在过去几年中使用maven和现在的spring 3.1配置文件得出的是:
PropertyPlaceholderConfigurer来设置应用程序(或者根据客户设置一些JNDI资源).这允许只有一个maven版本运行.PropertyPlaceholderConfigurer我们使用的属性中激活弹簧轮廓.有一些很好的教程如何做到这一点:
我们通常只使用maven配置文件将构建拆分为开发人员和持续集成构建的不同部分.我们实际上不再将它们用于.war文件的目标环境.我们仍然使用maven配置文件进行自动数据库部署,与Web应用程序(数据量,测试数据等)相比,它们有所不同,但这些不是以拉链形式提供的.
肯定还有其他方法可以去.我不认为它的故事结束:)
但它可能有所帮助.
| 归档时间: |
|
| 查看次数: |
10939 次 |
| 最近记录: |