gpt4 book ai didi

java - 无法运行 tomcat java : Permission denied

转载 作者:行者123 更新时间:2023-11-28 23:39:33 24 4
gpt4 key购买 nike

当我在终端 ubuntu 中键入 sh startup.sh 时,我发现下面的日志和我的 tomcat 服务器没有启动。我可以从 eclipse ide 运行 server 但我不能从终端运行它。sudo sh startup.sh 工作。感谢大家之前为我提供答案它工作正常。现在另一个问题是 mvn clean install 以前没有工作它现在也可以工作它告诉程序'mvn'可以在以下包中找到: *专家 * maven2这在 eclipse 中也能正常工作吗?

 INFO: Server startup in 5732 ms
20 Jan, 2014 7:39:54 PM org.apache.coyote.http11.AbstractHttp11Protocol pause
INFO: Pausing Coyote HTTP/1.1 on http-8080
20 Jan, 2014 7:39:54 PM org.apache.coyote.ajp.AjpProtocol pause
INFO: Pausing Coyote AJP/1.3 on ajp-8009
20 Jan, 2014 7:39:55 PM org.apache.catalina.core.StandardService stopInternal
INFO: Stopping service Catalina
./catalina.sh: 1: eval: /opt/jdk1.6.0_23/bin/java: Permission denied
./catalina.sh: 1: eval: /opt/jdk1.6.0_23/bin/java: Permission denied

最佳答案

catalina.sh 脚本通过运行如下命令启动 tomcat 实例:

eval "\"$_RUNJAVA\"" <lots of options> ...
org.apache.catalina.startup.Bootstrap "$@" start \
>> "$CATALINA_OUT" 2>&1 "&"

其中 $_RUNJAVA 之前已设置为 Java 可执行文件的路径名。

现在这显然失败了,说“/opt/jdk1.6.0_23/bin/java: Permission denied”

这可能意味着几件事:

  • /opt/jdk1.6.0_23/bin/java 文件不存在该路径名。 (这可能是由于符号链接(symbolic link)损坏...)
  • /opt/jdk1.6.0_23/bin/java 文件确实存在,但当前(有效)用户无法执行。
  • /opt/jdk1.6.0_23/bin/java 文件确实存在,但由于对某些目录 的权限,当前用户被禁止访问它路径名。
  • (如果您使用的是 SELinux/enforcing ... 或等效项),策略配置为不允许在该上下文中执行该可执行文件。

所以……:

  • 检查您实际使用哪个有效用户来启动 Tomcat。
  • 检查该文件是否存在于该位置。 (也许您在其他位置安装了较新的 Java。)
  • 检查它是否可由该用户执行。
  • 检查文件路径。
  • 如果您使用的是 SELinux(或等效的),请检查安全日志以了解与此对应的事件。

如果问题是您使用了错误的 Java 安装,那么“修复”将取决于您运行 catalina.sh 的方式。如果您从 shell 手动运行它,请确保在您的 shell 中正确设置和导出 JAVA_HOME。如果您从“init”脚本运行 catalina.sh,请检查脚本正在做什么......


(这不太可能与 catalina.sh 本身的权限有关。)

关于java - 无法运行 tomcat java : Permission denied,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21373582/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com