环境变量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"));
}