[ https://issues.apache.org/jira/browse/MTOMCAT-220?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13635196#comment-13635196 ]
Aivaras Ruzveltas commented on MTOMCAT-220: ------------------------------------------- Using different ports for different modules does not help either. In that case second application fails with some application specific exception. > Tomcat does not stop listening to given port > -------------------------------------------- > > Key: MTOMCAT-220 > URL: https://issues.apache.org/jira/browse/MTOMCAT-220 > Project: Apache Tomcat Maven Plugin > Issue Type: Bug > Components: tomcat7 > Affects Versions: 2.1 > Environment: java 7; maven 3.0.5; ubuntu 12.10 (quantal) 64-bit > Reporter: Aivaras Ruzveltas > Assignee: Olivier Lamy (*$^¨%`£) > > We have a multimodule Maven project containing many WAR applications: > . > ├── Parent > ├── ChildWar1 > ├── ChildWar2 > └── ... > We want to run integration tests for all of those WAR modules. But after > Tomcat is shutdown (shutdown MOJO at post-integration-test) first module, > main JVM keeps listening to specified port (lsof -i TCP:18082) and when > Tomcat is being started for second WAR module it fails with output: > [INFO] --- tomcat7-maven-plugin:2.1:run-war-only (start-tomcat7) @ ChildWar2 > --- > [INFO] Running war on http://localhost:18082/ChildWar2 > [INFO] Creating Tomcat server configuration at > /somedir/ChildWar2/target/tomcat > [INFO] create webapp with contextPath: /ChildWar2 > Apr 18, 2013 4:36:02 PM org.apache.coyote.AbstractProtocol init > INFO: Initializing ProtocolHandler ["http-bio-18082"] > Apr 18, 2013 4:36:02 PM org.apache.coyote.AbstractProtocol init > SEVERE: Failed to initialize end point associated with ProtocolHandler > ["http-bio-18082"] > java.net.BindException: Address already in use <null>:18082 > at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:406) > at > org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:610) > at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:429) > at > org.apache.coyote.http11.AbstractHttp11JsseProtocol.init(AbstractHttp11JsseProtocol.java:119) > at > org.apache.catalina.connector.Connector.initInternal(Connector.java:981) > at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102) > at > org.apache.catalina.core.StandardService.initInternal(StandardService.java:559) > at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102) > at > org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:814) > at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102) > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139) > at org.apache.catalina.startup.Tomcat.start(Tomcat.java:335) > at > org.apache.tomcat.maven.plugin.tomcat7.run.AbstractRunMojo.startContainer(AbstractRunMojo.java:1091) > at > org.apache.tomcat.maven.plugin.tomcat7.run.AbstractRunMojo.execute(AbstractRunMojo.java:512) > at > org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) > at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) > at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) > at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) > at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) > at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) > at > org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) > at > org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) > at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320) > at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) > at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) > at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) > at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:88) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55) > at java.lang.reflect.Method.invoke(Method.java:613) > at > org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) > at > org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) > at > org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) > at > org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) > Caused by: java.net.BindException: Address already in use > at > java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:406) > at java.net.ServerSocket.bind(ServerSocket.java:387) > at java.net.ServerSocket.<init>(ServerSocket.java:248) > at java.net.ServerSocket.<init>(ServerSocket.java:192) > at > org.apache.tomcat.util.net.DefaultServerSocketFactory.createSocket(DefaultServerSocketFactory.java:49) > at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:393) > ... 34 more -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org