Java jhipster应用程序部署到Heroku时出现错误

Java jhipster应用程序部署到Heroku时出现错误,java,maven,heroku,jhipster,heroku-toolbelt,Java,Maven,Heroku,Jhipster,Heroku Toolbelt,我正在尝试使用ubuntu将jhipster生成的应用程序部署到heroku。当我打字时: echo $JAVA_HOME ,我得到了/usr/lib/jvm/java-8-oracle 但是,当使用jhipster命令将应用程序部署到heroku时,我得到了以下错误 sudo jhipster heroku Using JHipster version installed locally in current project's node_modules Executing jh

我正在尝试使用ubuntu将jhipster生成的应用程序部署到heroku。当我打字时:

echo $JAVA_HOME
,我得到了
/usr/lib/jvm/java-8-oracle

但是,当使用jhipster命令将应用程序部署到heroku时,我得到了以下错误

    sudo jhipster heroku


Using JHipster version installed locally in current project's node_modules
Executing jhipster:heroku
Options: 
Heroku configuration is starting
Deploying as existing app: infinite-savannah-43112

Using existing Git repository

Heroku CLI deployment plugin already installed

Provisioning addons
No new addons created

Creating Heroku deployment files
identical src/main/resources/config/bootstrap-heroku.yml
identical src/main/resources/config/application-heroku.yml
identical Procfile
identical pom.xml
identical pom.xml

Building application
✖ { Error: Command failed: ./mvnw verify -DskipTests=true -B -Pprod
Error: JAVA_HOME is not defined correctly.
  We cannot execute /usr/lib/jvm/java-9-openjdk-amd64/bin/java/bin/java

    at ChildProcess.exithandler (child_process.js:272:12)
    at ChildProcess.emit (events.js:160:13)
    at maybeClose (internal/child_process.js:943:16)
    at Socket.stream.socket.on (internal/child_process.js:363:11)
    at Socket.emit (events.js:160:13)
    at Pipe._handle.close [as _onclose] (net.js:562:12)
  killed: false,
  code: 1,
  signal: null,
  cmd: './mvnw verify -DskipTests=true -B -Pprod' }
Congratulations, JHipster execution is complete!

甚至我的JAVA_HOME也指向JAVA-8-oracle,为什么jhipster抛出错误说JAVA_HOME指向其他东西以及对此的任何修复

您使用的是jhipster不支持的JDK 9。你不应该使用sudo,它非常不安全。我假设您安装了节点作为SUDO,您应该考虑重新安装节点(可能使用NVM)并更改项目文件的所有权。您的错误可能来自sudo命令。

您使用的是JHipster不支持的JDK 9。你不应该使用sudo,它非常不安全。我假设您安装了节点作为SUDO,您应该考虑重新安装节点(可能使用NVM)并更改项目文件的所有权。您的错误可能来自sudo命令。

如果您手动将
.yo rc.json
中的
herokuDeployType
值编辑为:

"herokuDeployType": "git"

然后,下次运行jhipster heroku时,它将在heroku上运行Maven。

如果手动编辑
.yo rc.json
中的
heroku部署类型
值,则:

"herokuDeployType": "git"

然后下次运行jhipster heroku时,它将在heroku上运行Maven。

您是否能够在jhipster命令之外运行
/mvnw verify
?此外,您还可以尝试Git部署,它将在Heroku而不是本地构建。如何更改Git部署选项。因为现在,当我运行jhipster heroku时,默认情况下,它默认使用本地构建选项。它并没有要求我为Git部署选择选项,只是第一次要求我选择这个选项。现在,默认情况下总是使用本地构建选项。您是否能够在jhipster命令之外运行
/mvnw verify
?此外,您还可以尝试Git部署,它将在Heroku而不是本地构建。如何更改Git部署选项。因为现在,当我运行jhipster heroku时,默认情况下,它默认使用本地构建选项。它并没有要求我为Git部署选择选项,只是第一次要求我选择这个选项。现在,默认情况下,它总是使用本地构建选项。