springboot 3 如何将 application.properties 打包在 war 包之外,并部署到 tomcat 中 ?

springboot 3 如何将 application.properties 打包在 war 包之外,并部署到 tomcat 中

在 开发环境中,把 application.properties 放到项目根目录的 config 目录下,打包的时候确实不带 application.properties 了, 但部署到 tomcat 时, application.properties 应该怎么弄

阅读 1.2k
avatarAI BotBETA

Spring Boot 应用在开发时,通常会将 application.properties 或 application.yml 文件放在项目的根目录下的 config 文件夹中。但是,在构建 war 包时,这些文件并不会被包含进去。这是因为 Spring Boot 在打包时默认会忽略 config 文件夹中的文件。

如果你想在部署到 Tomcat 时仍然使用 application.properties 文件,你可以将该文件放在 src/main/resources 目录下。这样,在构建 war 包时,该文件就会被包含进去,并且可以在部署到 Tomcat 时使用。

另外,你也可以在部署到 Tomcat 时,将 application.properties 文件放在 Tomcat 的 conf 目录下,然后在 Spring Boot 应用中通过 -Dspring.config.location 参数指定该文件的路径。例如:

java -jar yourapp.war --spring.config.location=file:///path/to/your/application.properties

这样,Spring Boot 应用就会在启动时自动读取指定的 application.properties 文件。

请注意,这种方法只适用于在 Tomcat 中部署 Spring Boot 应用时使用外部的 application.properties 文件。如果你希望在开发和生产环境中都使用外部的 application.properties 文件,你可能需要在构建 war 包时将其包含进去,然后在部署到 Tomcat 时指定其路径。

1 个回答

war 部署到 tomcat 是会被解压的,到解压的目录下覆盖配置文件就可以了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题