找不到 /Users/user/tomcat/bin/setclasspath.sh

找不到 /Users/user/tomcat/bin/setclasspath.sh

运行此程序需要此文件。我是 Mac OS X 及其终端的新手。

我正在使用此 URL 提供的步骤安装 Apache Tomcathttp://www.editrocket.com/articles/tomcat_mac.html,但是当我跑的时候

sh startup.sh

我收到以下错误:

Cannot find /Users/user/tomcat/bin/setclasspath.sh
 This file is needed to run this program. 

setclasspath.sh在此位置已经存在。

答案1

检查你的CATALINA_HOME通过做echo $CATALINA_HOME

这应该指向您安装 tomcat 的位置。

在您的代码中添加此行~/.bash_profile并将其作为源代码。

export CATALINA_HOME=/path/to/tomcat-x.x

答案2

我知道这是一篇老帖子,但是我遇到过这个问题,因为我的开发机器上有多个 Tomcat 实例,并且倾向于将它们放在我的用户帐户的子目录中,以使它们与 OS X 自带的内容分开。

我发现最好让这些设置自成一体,也就是说,setenv.sh针对每个实例,将它们放在一个文件中。

因此,例如,如果 John Doe 正在运行 Tomcat v7.0.49,那么在他创建的某个目录中:

/用户/johndoe/服务器/应用程序/tomcat-7.0.49/bin/setenv.sh

该文件中:

导出 CATALINA_BASE="/Users/johndoe/Server/app/tomcat-7.0.49"
导出 CATALINA_HOME="/Users/johndoe/Server/app/tomcat-7.0.49"

这几乎可以在任何地方使用。您现在告诉这个特定的 Tomcat 实例在哪里查找自身。请记住,如果您在同一目录中有多个相同 Tomcat 版本的实例,则需要为每个实例指定一个唯一的父文件夹名称。

另外值得一提的是,CATALINA_BASE 是可选的,如果你忽略它,它将默认为 CATALINA_HOME。列出两者只是我的个人偏好。

答案3

CATALINA_HOME我知道这是一个老问题。我通过指定环境变量的完整路径解决了这个问题;

我变了;

CATALINA_HOME="~/Servers/tomcat"

到;

CATALINA_HOME="/Users/{my_username}/Servers/tomcat"

它本不应该产生任何影响但由于某种原因它却产生了影响。

答案4

需要在两处设置两行:
路径详情为:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
export CATALINA_HOME=/opt/tomcat/apache-tomcat-7.0.90

将这些路径放在行尾。
要编辑的文件:

vi ~/.bashrc
vi ~/.bash_profile

./shutdown.sh
./startup.sh

相关内容