运行此程序需要此文件。我是 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