将 war 个文件部署到 heroku,包括其他文件

Deploy war file to heroku including additional files

我正在将 war 文件部署到 heroku 并希望将额外的 properties 文件包含到 slug 中,如下所述:

Configuring WAR Deployment with the Heroku CLI

$ heroku war:deploy application.war --app awesomeapp --jdk 14 --includes app1.properties

它成功部署了 war 文件,但是在扩展应用程序的任何子文件夹中我找不到 app1.properties 文件。同时,war 存档中的所有其他文件都在它们的位置上,额外的 tomcat war-tracker 文件,仅此而已。我尝试添加一些具有相同结果的 jar 文件:

$ heroku war:deploy application.war --app awesomeapp --jdk 14 --includes app1.properties:some-lib.jar

问题:heroku 在哪里包含附加文件?如何访问那里?

这是 heroku-cli 的输出:

Uploading application.war
-----> Packaging application...
       - app: awesomeapp
       - including: app1.properties
       - including: some-lib.jar
       - including: webapp-runner.jar
       - including: application.war
-----> Creating build...
       - file: slug.tgz
       - size: 30MB
-----> Uploading build...
       - success
-----> Deploying...
remote:
remote: -----> heroku-deploy app detected
remote: -----> Installing JDK 14... done
remote: -----> Discovering process types
remote:        Procfile declares types -> web
remote:
remote: -----> Compressing...
remote:        Done: 96.9M
remote: -----> Launching...
remote:        Released v14
remote:        https://awesomeapp.herokuapp.com/ deployed to Heroku
remote:
-----> Done

这些文件将添加到您的 Heroku 应用程序的根目录中,不会放入扩展的应用程序目录中。

您可以通过 运行 heroku run "cat app1.properties" 验证您的文件是否存在于您的 Dynos 中。如果您想自己探索文件系统,heroku run bash 允许您深入研究它。

编辑: 如果你需要一个文件路径,你可以使用

构造一个
String path = System.getProperty("user.home") + File.separator + "app1.properties";