Heroku服务器上的Java Spark未绑定到端口并崩溃

Heroku服务器上的Java Spark未绑定到端口并崩溃,java,heroku,Java,Heroku,每次我尝试向Heroku服务器发送请求时,它都会挂起,直到应用程序由于R10错误而崩溃,这是因为服务器没有绑定到Heroku提供的端口。我不知道为什么会这样。 这是我的主要类,其中有一个简单的服务器,用于测试 public static void main(String[] args) { port(getHerokuAssignedPort()); get("/",(req,res) -> "Request Recived!"); } static int getHero

每次我尝试向Heroku服务器发送请求时,它都会挂起,直到应用程序由于R10错误而崩溃,这是因为服务器没有绑定到Heroku提供的端口。我不知道为什么会这样。 这是我的主要类,其中有一个简单的服务器,用于测试

public static void main(String[] args) {
    port(getHerokuAssignedPort());
    get("/",(req,res) -> "Request Recived!");
}
static int getHerokuAssignedPort() {
    ProcessBuilder processBuilder = new ProcessBuilder();
    if (processBuilder.environment().get("PORT") != null) {
        return Integer.parseInt(processBuilder.environment().get("PORT"));
    }
    return 4567; //return default port if heroku-port isn't set (i.e. on localhost)
}
这是我的程序文件:
web:java-jar-bot.jar


正如我所说,程序会一直挂起,直到由于端口未绑定而崩溃。

尝试使用
Integer.valueOf(System.getenv(“port”)
获取端口号。

这是我的错误。推到heroku服务器时,我忘记了构建jar。

我更新了答案。我刚想起来你需要把它转换成Spark的整数。是的,我就是这么做的。它给了我和上面一样的错误。