环境变量CATALINA_HOME: tomcat的安装目录.
显示tomcat服务器信息的方式很多,
1. 运行%CATALINA_HOME%\bin目录下的version.bat批处理文件
2. 在命令行输入命令: "%CATALINA_HOME%\bin\catalina.bat" version
这些事实上都是调用%CATALINA_HOME%\lib\catalina.jar类库中org\apacha\catalina\util\ServerInfo.properties配置信息.
修改org\apacha\catalina\util\ServerInfo.properties中的配置信息后,上面二种方式显示的结果会相应地发生变化.
e.g.
# Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. # The ASF licenses this file to You under the Apache License, Version 2.0 # (the "License"); you may not use this file except in compliance with # the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. server.info=Apache Tomcat/6.0.32 server.number=6.0.32.0 server.built=February 2 2011 2003
可以通过运行catalina.jar中org.apache.catalina.util.ServerInfo输出tomcat服务器信息
相关命令:java -cp "%CATALINA_HOME%\lib\catalina.jar" org.apache.catalina.util.ServerInfo
org.apache.catalina.util.ServerInfo关键代码:
static { try { InputStream is = ServerInfo.class.getResourceAsStream ("/org/apache/catalina/util/ServerInfo.properties"); Properties props = new Properties(); props.load(is); is.close(); serverInfo = props.getProperty("server.info"); serverBuilt = props.getProperty("server.built"); serverNumber = props.getProperty("server.number"); } catch (Throwable t) { ; } if (serverInfo == null) serverInfo = "Apache Tomcat"; if (serverBuilt == null) serverBuilt = "unknown"; if (serverNumber == null) serverNumber = "5.5.0.0"; } public static void main(String args[]) { System.out.println("Server version: " + getServerInfo()); System.out.println("Server built: " + getServerBuilt()); System.out.println("Server number: " + getServerNumber()); System.out.println("OS Name: " + System.getProperty("os.name")); System.out.println("OS Version: " + System.getProperty("os.version")); System.out.println("Architecture: " + System.getProperty("os.arch")); System.out.println("JVM Version: " + System.getProperty("java.runtime.version")); System.out.println("JVM Vendor: " + System.getProperty("java.vm.vendor")); }