![]() |
1
3
我建议您构建一个原始war项目,其中可能包含一些用于开发的默认文件,并将其部署到存储库中。 然后,您可以构建多个依赖于war项目的项目,并提供它们自己的特定资源。 JavaOne 2009演示文稿 Getting Serious About Build Automation: Using Maven in the Real World
|
![]() |
2
1
我认为你应该建立一场战争。对于开发人员来说,在覆盖层上乱搞是一种太大的诱惑,他们“只是为了那个环境而放弃这个补丁”。 使用 JNDI resources attach 外部JNDI资源文件(如果需要,可以为每种类型的环境附加一个)。 当然,您需要一个过程来检索正确的资源文件并将其应用到您的环境中(使用密码和其他敏感变量对其进行调整),但这是一个相当简单的脚本编写练习。 |
![]() |
3
1
我将属性放在我的maven pom.xml中。首先,我将整个web应用程序切碎,以便为不同的层提供单独的罐子;persistenc/db、服务、web(例如springmvc的控制器)和war。war项目的jsp和properties/config/xml文件位于src/main/resources中。
和
然后,我有一系列配置文件,用于各种构建:
因此,您可以看到由于maven的过滤,pom中的log.filename属性是如何使用的。
|
![]() |
4
0
我非常喜欢每个可部署系统只有一个版本。如果您有生产版本、测试版本等,这将通过必要的检查和重建降低您的速度。 构建一次war,并对每个环境使用相同的war。
有关使用spring的示例,请参见此处: http://www.developer.com/java/ent/article.php/3811931 这可以很容易地适应使用,但没有弹簧。 有些属性不适合在战争中打包,例如生产密码。对于这些属性,可以轻松使用上述链接方法从外部文件路径加载属性。 |