java - 如何在不解包的情况下更改 war 中 web-inf/classes 目录中的文件?

标签 java tomcat war web-inf

这是我的 war 文件的结构。

MyApp.war
      WEB-INF
          classes/com/info/App.java
          classes/application.properties
          lib/
      META-INF
      test  

就在将这场 war 部署到 tomcat 之前,Ops 团队需要更新 application.properties 文件。

我不想爆炸。但只是为了更新 war 并让 tomcat 在启动期间爆炸

我试过了

jar uvf MyApp.war /var/data/prod/application.properties

执行此命令后,我看到在 MyApp.war 的根级别添加了一个新文件。但我希望将 WEB-INF/classes/application.properties 替换为这个。我该怎么做。

最佳答案

无论如何,我认为这不是好方法,您应该外部化您的配置文件,因为它会从一个环境更改为另一个环境,所以它不应该成为您文件的一部分。您应该调整您的代码,以便能够从外部文件夹中读取您的应用程序的配置。然后,您的 Ops 团队将有相同的 war 部署在所有环境上,而不是每个环境一个,这样更不容易出错。

关于java - 如何在不解包的情况下更改 war 中 web-inf/classes 目录中的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37975063/

相关文章:

java - org/hibernate/HibernateException : Unsupported major. 次要版本 52.0(无法加载类 org.hibernate.HibernateException)

java - 无法在 Jelastic 5.4 版上通过 Deploment Manager 将 WAR 文件部署到 Tomcat

java - 打开新页面时排除第一列

java - 在使用 spring applicationContext 的接口(interface)实现之间进行选择?

java - HTTP Status 404 – 在 Eclipse 中安装 maven 后未找到

apache - 为什么我的工作文件在本地有效,但在我的虚拟主机服务器上无效?

java - 单个大型 Web 应用程序还是多个小型 Web 应用程序?

java - 如果关闭 Scanner 是否必须关闭 FileInputStream

Java - "String index out of range"异常

java - 连接池策略 : Good, 坏还是丑?