放置在另一台 tomcat 服务器中的 WAR 文件部署在为另一台 tomcat 服务器运行 startup.bat 上

时间:2021-04-19 05:03:59

标签: tomcat

我有两个 tomcat 服务器,一个在端口 P1 上运行,另一个在 P2 端口上运行。现在发生的奇怪的事情是,当我为 server2 运行 startup.bat 时,server1 的 war 文件已部署,我可以运行 server1 的 webapps 文件夹中存在的应用程序。并且 server2 中存在的 WAR 从未部署过。此外,当我为 server1 运行 startup.bat 然后为 server2 运行 shutdown.bat server1 进程关闭时,反之亦然。不知何故,server2 已连接到 server1。我不知道这样的事情怎么可能。任何帮助表示赞赏。

在为 server2 运行 startup.bat 时,我得到以下日志

19-Apr-2021 05:10:09.035 SEVERE [main] org.apache.catalina.core.AprLifecycleListener.init An incompatible version [1.1.27] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.14]
19-Apr-2021 05:10:09.067 SEVERE [main] org.apache.catalina.core.AprLifecycleListener.init An incompatible version [1.1.27] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.14]
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version name:   Apache Tomcat/8.5.57
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          Jun 30 2020 21:49:10 UTC
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version number: 8.5.57.0
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Windows 10
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:            10.0
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:          amd64
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:             C:\Program Files\Java\jre1.8.0_202
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:           1.8.0_202-b08
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:            Oracle Corporation
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         C:\apache-tomcat-8.5.57
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         C:\apache-tomcat-8.5.57
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=C:\apache-tomcat-8.5.57\conf\logging.properties
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
19-Apr-2021 05:10:09.113 INFO [main] 
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dignore.endorsed.dirs=
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=C:\apache-tomcat-8.5.57
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=C:\apache-tomcat-8.5.57
19-Apr-2021 05:10:09.113 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=C:\apache-tomcat-8.5.57\temp
19-Apr-2021 05:10:09.113 SEVERE [main] org.apache.catalina.core.AprLifecycleListener.init An incompatible version [1.1.27] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.14]
19-Apr-2021 05:10:09.254 SEVERE [main] org.apache.catalina.core.AprLifecycleListener.init An incompatible version [1.1.27] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.14]
19-Apr-2021 05:10:09.254 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
19-Apr-2021 05:10:09.348 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
19-Apr-2021 05:10:09.363 INFO [main] org.apache.catalina.startup.Catalina.load Initialization processed in 611 ms
19-Apr-2021 05:10:09.395 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina]
19-Apr-2021 05:10:09.395 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.5.57
19-Apr-2021 05:10:09.425 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive [C:\apache-tomcat-8.5.57\webapps\Server1.war]
19-Apr-2021 05:10:13.567 INFO [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.

Server2 tomcat的路径是这个

C:\tomcat2\apache-tomcat-7.0.37

Server1 的路径是这个

C:\apache-tomcat-8.5.57

那是两个tomcat服务器的版本不同。

此外,当我启动 server1 然后我尝试启动 server2 时,我收到以下错误。先启动 server2 然后再尝试启动 server1 时收到同样的错误

19-Apr-2021 03:52:05.348 SEVERE [main] org.apache.catalina.core.StandardService.initInternal Failed to initialize connector [Connector[HTTP/1.1-8080]]
        org.apache.catalina.LifecycleException: Protocol handler initialization failed
                at org.apache.catalina.connector.Connector.initInternal(Connector.java:1077)
                at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:136)
                at org.apache.catalina.core.StandardService.initInternal(StandardService.java:552)
                at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:136)
                at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:848)
                at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:136)
                at org.apache.catalina.startup.Catalina.load(Catalina.java:639)
                at org.apache.catalina.startup.Catalina.load(Catalina.java:662)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                at java.lang.reflect.Method.invoke(Unknown Source)
                at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:302)
                at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:472)
        Caused by: java.net.BindException: Address already in use: bind
                at sun.nio.ch.Net.bind0(Native Method)
                at sun.nio.ch.Net.bind(Unknown Source)
                at sun.nio.ch.Net.bind(Unknown Source)
                at sun.nio.ch.ServerSocketChannelImpl.bind(Unknown Source)
                at sun.nio.ch.ServerSocketAdaptor.bind(Unknown Source)
                at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:221)
                at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:1118)
                at org.apache.tomcat.util.net.AbstractJsseEndpoint.init(AbstractJsseEndpoint.java:222)
                at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:587)
                at org.apache.coyote.http11.AbstractHttp11Protocol.init(AbstractHttp11Protocol.java:74)
                at org.apache.catalina.connector.Connector.initInternal(Connector.java:1075)

1 个答案:

答案 0 :(得分:0)

您的日志显示 CATALINA_HOMECATALINA_BASE 都设置为 C:\apache-tomcat-8.5.57。检查这些环境变量是否未在您的 Windows 系统中全局设置并删除它们。

Tomcat 安装中的 *.bat 脚本使用一些启发式方法(基于 *.bat 文件的位置)来设置这些变量。然而,这只发生在未设置的情况下。