当我在终端sh startup.sh
中键入ubuntu
时,我发现下面的日志并且我的tomcat服务器无法启动。我可以从server
运行eclipse ide
但我无法从terminal.sudo sh startup.sh运行它。感谢你们所有人以前给我答案它工作得很好。现在另一个问题是mvn clean install以前没有工作它现在也工作了它告诉程序'mvn'可以在以下包中找到:
* maven
* maven2
这在日食中也可以正常工作吗?
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
答案 0 :(得分:0)
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
文件与该路径名不存在。 (这可能是因为符号链接破坏了......)/opt/jdk1.6.0_23/bin/java
文件确实存在,但当前(有效)用户无法执行该文件。/opt/jdk1.6.0_23/bin/java
文件确实存在,但由于路径名中某些目录的权限,当前用户被禁止访问它。所以...:
如果问题是您使用的是错误的Java安装,那么“修复”将取决于您的运行方式catalina.sh
。如果您是从shell手动运行它,请确保在shell中正确设置并导出JAVA_HOME
。如果从“init”脚本运行catalina.sh
,请检查脚本正在执行的操作...
(这不一定与catalina.sh
本身的权限有关。)
答案 1 :(得分:0)
sudo sh startup.sh工作。感谢大家以前为我提供的答案只有sh startup.sh才能正常工作。这是java permision问题我现在发现我设置了java的完全权限,它也适用于sh startup.sh。