Heroku 从 Javascript 运行 Jar

Ale*_*dro 0 javascript java heroku

我正在尝试从 Javascript 文件执行 Jar 文件以获取控制台输出。我已将两个文件推送到 Heroku,但是当我尝试在 js 文件中调用该函数时,出现此错误:

/bin/sh: 1: java: not found exec 错误: 错误: 命令失败: java -jar -Xms1024m MongoConnector-all abaabaa

[31merror[39m: RangeError: 超出最大调用堆栈大小

这是我拥有的代码:

const runCoreSearch = function(searchInputString) {
  const exec = require('child_process').exec;
  //child = exec('/usr/bin/java -jar ~/Applications/Mongo Connector-all.jar' + rakeInputString,
  const child = exec('java -jar -Xms1024m MongoConnector-all ' + searchInputString,
  function (error, stdout, stderr){
...
Run Code Online (Sandbox Code Playgroud)

在他们的网站 ( https://devcenter.heroku.com/articles/deploying-executable-jar-files ) 上说要使用命令“heroku deploy:”,但我不是要部署 Java 项目,只需执行来自 node.js 项目的 jar。有任何想法吗?

cod*_*ger 6

您需要将heroku/jvmbuildpack添加到您的应用程序并重新部署:

$ heroku buildpacks:add heroku/jvm
$ git commit -m "redeploy" --allow-empty
$ git push heroku master
Run Code Online (Sandbox Code Playgroud)

这会将java命令安装到您的 dyno 中。