IntelliJ IDEA:Tomcat 8.5.13和9.0.0.M19 - 工件部署期间出错。有关详细信息,请参阅服

时间:2017-04-11 19:30:52

标签: java tomcat intellij-idea

我无法理解发生了什么。 2天前没有问题,现在我无法部署我的应用程序。任何一个。关于网络,我唯一做的就是使用以太网线将我的笔记本电脑插入家中的其他插座,没别的。我尝试了几乎我在这里找到的所有解决方案,没有任何帮助。

日志:

C:\servers\apache-tomcat-8.5.13\bin\catalina.bat run
[2017-04-11 06:19:51,636] Artifact TestJEE:war exploded: Server is not connected. Deploy is not available.
Using CATALINA_BASE:   "C:\Users\wojci\.IntelliJIdea2016.3\system\tomcat\Tomcat_8_5_13_TestJEE"
Using CATALINA_HOME:   "C:\servers\apache-tomcat-8.5.13"
Using CATALINA_TMPDIR: "C:\servers\apache-tomcat-8.5.13\temp"
Using JRE_HOME:        "C:\Program Files\Java\jdk1.8.0_112"
Using CLASSPATH:       "C:\servers\apache-tomcat-8.5.13\bin\bootstrap.jar;C:\servers\apache-tomcat-8.5.13\bin\tomcat-juli.jar"
11-Apr-2017 18:19:54.084 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version:        Apache Tomcat/8.5.13
11-Apr-2017 18:19:54.087 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          Mar 27 2017 14:25:04 UTC
11-Apr-2017 18:19:54.087 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number:         8.5.13.0
11-Apr-2017 18:19:54.088 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Windows 10
11-Apr-2017 18:19:54.088 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:            10.0
11-Apr-2017 18:19:54.088 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:          amd64
11-Apr-2017 18:19:54.088 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:             C:\Program Files\Java\jdk1.8.0_112\jre
11-Apr-2017 18:19:54.088 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:           1.8.0_112-b15
11-Apr-2017 18:19:54.089 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:            Oracle Corporation
11-Apr-2017 18:19:54.089 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         C:\Users\wojci\.IntelliJIdea2016.3\system\tomcat\Tomcat_8_5_13_TestJEE
11-Apr-2017 18:19:54.090 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         C:\servers\apache-tomcat-8.5.13
11-Apr-2017 18:19:54.090 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=C:\Users\wojci\.IntelliJIdea2016.3\system\tomcat\Tomcat_8_5_13_TestJEE\conf\logging.properties
11-Apr-2017 18:19:54.090 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
11-Apr-2017 18:19:54.091 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote=
11-Apr-2017 18:19:54.091 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.port=1099
11-Apr-2017 18:19:54.091 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.ssl=false
11-Apr-2017 18:19:54.091 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.authenticate=false
11-Apr-2017 18:19:54.092 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.rmi.server.hostname=127.0.0.1
11-Apr-2017 18:19:54.092 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
11-Apr-2017 18:19:54.092 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
11-Apr-2017 18:19:54.092 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=C:\Users\wojci\.IntelliJIdea2016.3\system\tomcat\Tomcat_8_5_13_TestJEE
11-Apr-2017 18:19:54.092 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=C:\servers\apache-tomcat-8.5.13
11-Apr-2017 18:19:54.092 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=C:\servers\apache-tomcat-8.5.13\temp
11-Apr-2017 18:19:54.093 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded APR based Apache Tomcat Native library 1.2.12 using APR version 1.5.2.
11-Apr-2017 18:19:54.093 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
11-Apr-2017 18:19:54.093 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR/OpenSSL configuration: useAprConnector [false], useOpenSSL [true]
11-Apr-2017 18:19:55.187 INFO [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized (OpenSSL 1.0.2k  26 Jan 2017)
11-Apr-2017 18:19:55.560 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
11-Apr-2017 18:19:55.691 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
11-Apr-2017 18:19:55.745 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-nio-8009"]
11-Apr-2017 18:19:55.763 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
11-Apr-2017 18:19:55.802 INFO [main] org.apache.catalina.startup.Catalina.load Initialization processed in 2418 ms
11-Apr-2017 18:19:55.982 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service Catalina
11-Apr-2017 18:19:55.983 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.5.13
11-Apr-2017 18:19:56.185 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
11-Apr-2017 18:19:56.250 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-nio-8009"]
11-Apr-2017 18:19:56.382 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 578 ms
[2017-04-11 06:19:56,404] Artifact TestJEE:war exploded: Artifact is being deployed, please wait...
Connected to server
[2017-04-11 06:19:56,493] Artifact TestJEE:war exploded: Error during artifact deployment. See server log for details.
11-Apr-2017 18:20:06.205 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDescriptor Deploying configuration descriptor C:\Users\wojci\.IntelliJIdea2016.3\system\tomcat\Tomcat_8_5_13_TestJEE\conf\Catalina\localhost\ROOT.xml
11-Apr-2017 18:20:06.968 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDescriptor Deployment of configuration descriptor C:\Users\wojci\.IntelliJIdea2016.3\system\tomcat\Tomcat_8_5_13_TestJEE\conf\Catalina\localhost\ROOT.xml has finished in 762 ms
11-Apr-2017 18:20:06.973 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory C:\servers\apache-tomcat-8.5.13\webapps\manager
11-Apr-2017 18:20:07.084 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory C:\servers\apache-tomcat-8.5.13\webapps\manager has finished in 112 ms
Disconnected from server

当我尝试连接到“localhost:8080”时,我收到有关连接被拒绝和日志中“已断开连接服务器”消息的消息。 日志中没有任何用处(没有警告/错误)。 这个问题出现在我的JEE应用程序中。

正如我所说的从这里尝试了很多解决方案除了更改%JAVA_OPTS%env var的值之外,因为我在Tomcat目录和Catalina.bat中的任何地方都没有'setenv.bat'文件这个变量似乎设置得当。
我对这种技术很陌生,我有点害怕开始调整我不知道的东西。

可能导致此问题的原因是什么?有哪些可能的解决方案?

3 个答案:

答案 0 :(得分:10)

IntelliJ IDEA最新的Tomcat版本似乎存在部署问题。我们有一个开放的错误,附加了修补文件,您可以使用它来解决问题:

  • IDEA-171174 Tomcat 9.0.0.M19:无法部署简单的WAR工件

您可以找到IntelliJ IDEA Tomcat插件的patched jar,用它替换<IDEA_HOME>/plugins/Tomcat/lib/tomcatIntegration.jar

原始问题是由这个Tomcat错误引起的:

  • Bug 60949 - 无法使用管理器部署/取消部署war文件

在以下Tomcat版本中解决了此错误:

  • 8.5.14及更高版本
  • 9.0.0.M20及以后

建议等待/安装固定的Tomcat版本或者恢复到不受bug(5.8.12和9.0.0.M18)影响的版本,因为IntelliJ IDEA的解决方法使用了一些脏的hack使它与Tomcat 5.8.13和9.0.0.M19一起使用受Bug 60949(破坏的JMX)的影响。

答案 1 :(得分:1)

我正在使用 Spring 应用程序并使用 Tomcat 进行部署。解决我的问题是将此注释放在 SpringApplication 类中,哪个应用程序从该类启动。

@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class })

答案 2 :(得分:0)

该问题已通过将IntelliJ降级为2019.2.4得以解决