Java Spark无法绑定http端口

Java Spark无法绑定http端口,java,spark-java,Java,Spark Java,我正在尝试将端口80绑定到我的Spark服务器: import static spark.Spark.get; import static spark.Spark.port; public class Main { public static void main(String[] args) { port(80); get("/hello", (request, response) -> "hello world"); } } 但由于某

我正在尝试将端口80绑定到我的
Spark
服务器:

import static spark.Spark.get;
import static spark.Spark.port;

public class Main {

    public static void main(String[] args) {
        port(80);
        get("/hello", (request, response) -> "hello world");
    }
}
但由于某种原因,我得到了以下错误:

22:51:56.067 [Thread-0] ERROR spark.Spark - ignite failed
java.net.SocketException: Permission denied
    at sun.nio.ch.Net.bind0(Native Method)
    at sun.nio.ch.Net.bind(Net.java:433)
    at sun.nio.ch.Net.bind(Net.java:425)
    at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
    at org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:298)
    at org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
    at org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:236)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
    at org.eclipse.jetty.server.Server.doStart(Server.java:431)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
    at spark.embeddedserver.jetty.EmbeddedJettyServer.ignite(EmbeddedJettyServer.java:149)
    at spark.Service.lambda$init$2(Service.java:496)
    at java.lang.Thread.run(Thread.java:748)
我在我的
OS
中搜索了所有连接到端口80的绑定,但没有找到。

有什么解决方案吗?

直接绑定到端口80可能是个坏主意

此端口(任何小于1024的端口)需要root权限(但强烈不建议以root身份运行),或某些权限


通常,您在非特权端口上运行Spark。如果您想将其公开为Web连接的默认值,请考虑通过Web服务器(如NGIX或Apache)代理它;无论如何,您可能希望在附近托管其他东西。

直接绑定到端口80可能不是一个好主意

此端口(任何小于1024的端口)需要root权限(但强烈不建议以root身份运行),或某些权限


通常,您在非特权端口上运行Spark。如果您想将其公开为Web连接的默认值,请考虑通过Web服务器(如NGIX或Apache)代理它;您可能希望在附近托管其他东西。

您必须具有root权限才能绑定到<1024个端口。但是,不清楚您为什么要绑定到端口80,可能您只想连接到端口80。您必须具有root权限才能绑定到<1024的端口。但是,不清楚您为什么要绑定到端口80,也许您只想连接到端口80。