运行 Heroku 中的第二个非 Web java 应用进程

Running 2nd non-web java app process in Heroku

我想知道是否可以从网络 java 应用程序中 运行 Heroku 中的非网络 java 应用程序?基本上我想对 运行 非网络应用程序 jar 执行命令:

在 Heroku 中为一次性进程调用类似的东西:

Process proc = Runtime.getRuntime().exec("java -jar A.jar");

您可能不想从现有 Java 进程执行新进程。相反,您应该在应用的 Procfile 中创建一个新的进程类型,如下所示:

web: java -jar webapp-runner.jar yourapp.war
worker: java -jar A.jar

然后您可以从 CLI 运行 工作进程 heroku run worker,或者您可以对 Heroku API.

进行 HTTP 调用

我假设您正在使用 heroku war:deploy,这意味着您此时可能没有 Procfile。您可能需要切换到 heroku jar:deployinclude webapp-runner in your app manually