当前位置:  开发笔记 > 编程语言 > 正文

不同的WAR文件,共享资源

如何解决《不同的WAR文件,共享资源》经验,为你挑选了2个好方法。

假设你有几个应用程序共享相同的代码和大多数其他资源,但有一些不同的外观和感觉,一些标签更改等等(想想品牌).如果每个Web应用程序都要使用自己的WAR文件,那么您将在何处放置共享资源?

我已经使用类路径来共享类和属性文件.但是javascript和css文件怎么样?是创建和部署一个额外WAR文件的最佳方法,该文件将为这些共享文件提供其他应用程序所需的文件吗?

我还想到了一个构建脚本,它做了一些魔术,并从一个共同的源码喷出(略微)不同的WAR,但我不喜欢它,因为它只是在你需要构建/测试/运行单个应用程序时不必要的复杂化.

任何其他提示和技巧将不胜感激.



1> Robin..:

您可以在同一个EAR中部署两个WAR,并将公共资源放在EAR中.然后将适当的依赖项放在Web应用程序的清单中,以链接到耳中的jar文件.



2> Hans-Peter S..:

我看到用于此类产品线配置的策略是在使用maven构建时使用WAR 覆盖.您定义了一个包含公共内容的公共WAR,并将其与包含特定内容的其他WAR重叠,以便为每个应用程序生成不同的WAR.如果在不同的计算机上部署WAR变体,则此方法可能最有用.但我不确定我是否真的可以推荐这个.

如果您实际覆盖了东西,请记住指定覆盖配置,否则覆盖顺序不是确定性的.它甚至可能随着maven-war-plugin升级而改变.(在我们的案例中确实如此.)

推荐阅读
勤奋的瞌睡猪_715
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有