检查 tomcat 版本 (version.sh) 时显示错误的服务器版本
Wrong server version being displayed when checking tomcat version (version.sh)
大家好,希望大家多多指教。这让我发疯。
所以,当我 运行 version.sh 检查哪个 tomcat 是 运行ning 时,我得到下面的块。
正如您在 "server version" 下看到的,我得到的是 7.0.64 而不是 7.0.69。我该如何改变这个?
我有另一台服务器,没问题。只是这个服务器很难。哈哈
谢谢,V
[root@blah01 bin]# ./version.sh
Using CATALINA_BASE: /opt/apache-tomcat-7.0.69
Using CATALINA_HOME: /opt/apache-tomcat-7.0.69
Using CATALINA_TMPDIR: /opt/apache-tomcat-7.0.69/temp
Using JRE_HOME: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-3.b13.el6_10.x86_64/jre
Using CLASSPATH: /opt/apache-tomcat-7.0.69/bin/bootstrap.jar:/opt/apache-tomcat-7.0.69/bin/tomcat-juli.jar
Server version: Apache Tomcat/7.0.64
Server built: Aug 19 2015 17:18:06 UTC
Server number: 7.0.64.0
OS Name:Linux
OS Version: 2.6.32-754.3.5.el6.x86_64
Architecture: amd64
JVM Version: 1.8.0_181-b13
JVM Vendor: Oracle Corporation
根据您得到的输出,我怀疑这是一个简单的错误升级案例(或者,在这种情况下,降级)。
脚本version.sh
(以及,在Windows,version.bat
)从编译的Java类中提取版本号,所以这不是copied-over Tomcat 的 higher-numbered 版本的单个脚本的情况(或者更可能的是,不是 "upgraded" 的单个文件以及 Tomcat).
解决方案是通过删除现有的内容和 re-installing 所需版本的新副本来修复 Tomcat 安装。
我强烈建议阅读 Tomcat 附带的 RUNNING.txt
文件中标题为 高级配置 - 多个 Tomcat 实例 的部分。它描述了如何 "split" 将 Tomcat 部署到两个目录中:一个包含 Tomcat 二进制文件和脚本(在控制它的环境变量之后称为 CATALINA_HOME
)另一个包含您的配置、(通常)应用程序和(有时)支持该特定实例的脚本(称为 CATALINA_BASE
)。
将您的环境一分为二使得升级和降级非常容易。对于单个 point-release 升级,它是这样的:
- 将新版本解压到
apache-tomcat-x.y.z
- 将任何自定义库从
/path/to/apache-tomcat-x.y.z-1/lib
复制到 /path/to/apache.tomcat-x.y.z/lib
- 停止现有的 Tomcat 实例,如果它是 运行
- 将
CATALINA_BASE
从 /path/to/apache-tomcat-x.y.z-1
更改为 /path/to/apache.tomcat-x.y.z
- 启动新的 Tomcat 实例(例如
/path/to/apache.tomcat-x.y.z/bin/catalina.sh start
)
如果出现问题并且您需要降级,只需将 CATALINA_BASE
更改回原始值并重新启动您的 Tomcat 实例。您将回到开始的地方,并且可以找出新版本无法正常工作的原因。
大家好,希望大家多多指教。这让我发疯。
所以,当我 运行 version.sh 检查哪个 tomcat 是 运行ning 时,我得到下面的块。
正如您在 "server version" 下看到的,我得到的是 7.0.64 而不是 7.0.69。我该如何改变这个? 我有另一台服务器,没问题。只是这个服务器很难。哈哈
谢谢,V
[root@blah01 bin]# ./version.sh
Using CATALINA_BASE: /opt/apache-tomcat-7.0.69
Using CATALINA_HOME: /opt/apache-tomcat-7.0.69
Using CATALINA_TMPDIR: /opt/apache-tomcat-7.0.69/temp
Using JRE_HOME: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-3.b13.el6_10.x86_64/jre
Using CLASSPATH: /opt/apache-tomcat-7.0.69/bin/bootstrap.jar:/opt/apache-tomcat-7.0.69/bin/tomcat-juli.jar
Server version: Apache Tomcat/7.0.64
Server built: Aug 19 2015 17:18:06 UTC
Server number: 7.0.64.0
OS Name:Linux
OS Version: 2.6.32-754.3.5.el6.x86_64
Architecture: amd64
JVM Version: 1.8.0_181-b13
JVM Vendor: Oracle Corporation
根据您得到的输出,我怀疑这是一个简单的错误升级案例(或者,在这种情况下,降级)。
脚本version.sh
(以及,在Windows,version.bat
)从编译的Java类中提取版本号,所以这不是copied-over Tomcat 的 higher-numbered 版本的单个脚本的情况(或者更可能的是,不是 "upgraded" 的单个文件以及 Tomcat).
解决方案是通过删除现有的内容和 re-installing 所需版本的新副本来修复 Tomcat 安装。
我强烈建议阅读 Tomcat 附带的 RUNNING.txt
文件中标题为 高级配置 - 多个 Tomcat 实例 的部分。它描述了如何 "split" 将 Tomcat 部署到两个目录中:一个包含 Tomcat 二进制文件和脚本(在控制它的环境变量之后称为 CATALINA_HOME
)另一个包含您的配置、(通常)应用程序和(有时)支持该特定实例的脚本(称为 CATALINA_BASE
)。
将您的环境一分为二使得升级和降级非常容易。对于单个 point-release 升级,它是这样的:
- 将新版本解压到
apache-tomcat-x.y.z
- 将任何自定义库从
/path/to/apache-tomcat-x.y.z-1/lib
复制到/path/to/apache.tomcat-x.y.z/lib
- 停止现有的 Tomcat 实例,如果它是 运行
- 将
CATALINA_BASE
从/path/to/apache-tomcat-x.y.z-1
更改为/path/to/apache.tomcat-x.y.z
- 启动新的 Tomcat 实例(例如
/path/to/apache.tomcat-x.y.z/bin/catalina.sh start
)
如果出现问题并且您需要降级,只需将 CATALINA_BASE
更改回原始值并重新启动您的 Tomcat 实例。您将回到开始的地方,并且可以找出新版本无法正常工作的原因。