我通过启动命令/etc/init.d/jetty启动Jetty时遇到问题。执行命令时,会生成以下输出:
/etc/init.d/jetty start
Starting Jetty servlet engine.:
Jetty Rotate logs
Jetty servlet engine started, reachable on http://jagadguru:80/.: jetty.
当我在Jetty目录中输入java -jar start.jar
时,它确实成功启动。
任何人都可以帮我吗?
答案 0 :(得分:1)
这可能是文件权限问题。即使您使用sudo运行启动脚本,该脚本也会定义一个jetty用户(默认为jetty)。我有一个类似的问题,我对/ tmp的权限阻止了jetty在那里创建文件。我调整了/ tmp的权限,一切都很好!当然,jetty用户还需要对jetty文件夹的权限。
另外,要检查Jetty是否正确找到java,请运行sudo service jetty check
答案 1 :(得分:0)
由于某些工作或日志文件夹的权限错误,这可能是一个问题。我假设启动脚本尝试更改用户,因此没有与通过“java -jar”运行Jetty时使用的权限相同的权限。
另一种可能性是您没有设置JAVA_HOME并且启动脚本找不到您的java bin。
请附上某种日志文件,因为如果没有更详细的信息,很难说更多。
答案 2 :(得分:0)
在回答here时,/etc/default/jetty
中Jetty的默认配置仅允许来自localhost
的连接,您需要将JETTY_HOST
设置为0.0.0.0
以允许Jetty接受来自任何主机的连接。
将以下行添加到/etc/default/jetty
:
JETTY_HOST 0.0.0.0