java - 单独的 web.xml 用于开发和生产

标签 java eclipse web-applications

我的 web.xml 在开发环境和生产环境中是不同的。例如在开发环境中不需要安全约束。

通常我会按如下方式部署新的应用程序版本:

  1. 将 Eclipse 项目导出到 WAR。
  2. 上传WAR到服务器。
  3. 重新部署。

问题是我必须在导出之前手动取消注释 web.xml 中的安全约束。

你是如何解决这个问题的?

我在一些文章中也遇到过“web.xml 很少更改”的观点。但是,如果每次更新都导出到 WAR,web.xml 怎么可能不变呢?

提前致谢!

最佳答案

如果你不能在开发过程中使用相同的 web.xml,我会自动化构建过程,使用两个 web.xml 并捆绑“正确的”一个正如 Brian 建议的那样,在构建时取决于目标环境。但是,我会选择 Maven 而不是 Ant,因为恕我直言,它需要的工作更少,而且它有一个名为 profiles 的内置功能。这非常适合管理像这里这样的特定于环境的东西。

换句话说,我将构建置于 Maven 2 下并使用包含特定 maven-war-plugin 配置的 production 配置文件来构建包含 web.xml 具有所需的安全约束。另一种选择是合并开发 web.xml(cargo 可以做到这一点)以添加安全约束,但这已经是更“高级”的解决方案(更复杂一些)到位)。

关于java - 单独的 web.xml 用于开发和生产,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1816006/

相关文章:

java - 如何使 ANT 变得冗长?

java - 如何过滤 JSoup 中嵌套标签中的噪音? java

java - 为 Basic Auth 和 JWT 配置 spring security 的多种认证类型

java - 在 Play Framework 中删除父实体时,不为子实体调用 Model.delete()

Web项目的eclipse启动配置

java - Eclipse 和 Java 运行时环境可移植

javascript - 使用 jQtouch 的 Web 应用程序中的 SQLite

javascript - 缓存 list 缓存所有文件

python - 为多个请求重用数据库连接

android - Ubuntu 模拟器中 JellyBean 的多用户功能