すでに使用中のSpringアプリケーションアドレスを起動しています


96

私の春のアプリケーションを起動するこのエラーがあります:

java -jar target/gs-serving-web-content-0.1.0.jar

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::             (v0.5.0.M6)

2013-12-23 00:23:09.466  INFO 19252 --- [           main] hello.Application                        : Starting Application on mbp-de-antoine.home with PID 19252 (/Users/antoine/Documents/workspace-sts-3.4.0.RELEASE/springapp/target/gs-serving-web-content-0.1.0.jar started by antoine)
2013-12-23 00:23:09.511  INFO 19252 --- [           main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@24024c39: startup date [Mon Dec 23 00:23:09 CET 2013]; root of context hierarchy
2013-12-23 00:23:10.910  INFO 19252 --- [           main] o.apache.catalina.core.StandardService   : Starting service Tomcat
2013-12-23 00:23:10.910  INFO 19252 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache Tomcat/7.0.42
2013-12-23 00:23:11.045  INFO 19252 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2013-12-23 00:23:11.046  INFO 19252 --- [ost-startStop-1] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 1537 ms
2013-12-23 00:23:11.274  INFO 19252 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring FrameworkServlet 'dispatcherServlet'
2013-12-23 00:23:11.274  INFO 19252 --- [ost-startStop-1] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 'dispatcherServlet': initialization started
2013-12-23 00:23:11.409  INFO 19252 --- [ost-startStop-1] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2013-12-23 00:23:11.634  INFO 19252 --- [ost-startStop-1] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/greeting],methods=[],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public java.lang.String hello.GreetingController.greeting(java.lang.String,org.springframework.ui.Model)
2013-12-23 00:23:11.717  INFO 19252 --- [ost-startStop-1] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2013-12-23 00:23:11.717  INFO 19252 --- [ost-startStop-1] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2013-12-23 00:23:12.406  INFO 19252 --- [ost-startStop-1] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 'dispatcherServlet': initialization completed in 1132 ms
2013-12-23 00:23:12.417 ERROR 19252 --- [           main] o.a.coyote.http11.Http11NioProtocol      : Failed to start end point associated with ProtocolHandler ["http-nio-8080"]

java.net.BindException: Address already in use
    at sun.nio.ch.Net.bind0(Native Method)
    at sun.nio.ch.Net.bind(Net.java:444)
    at sun.nio.ch.Net.bind(Net.java:436)
    at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:214)
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
    at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:473)
    at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:617)
    at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:444)
    at org.apache.catalina.connector.Connector.startInternal(Connector.java:1010)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.StandardService.startInternal(StandardService.java:459)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:732)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.startup.Tomcat.start(Tomcat.java:335)
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.initialize(TomcatEmbeddedServletContainer.java:58)
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.<init>(TomcatEmbeddedServletContainer.java:53)
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getTomcatEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:259)
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:140)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.createEmbeddedServletContainer(EmbeddedWebApplicationContext.java:158)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:135)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:476)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122)
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:552)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:293)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:749)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:738)
    at hello.Application.main(Application.java:12)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:53)
    at java.lang.Thread.run(Thread.java:744)

2013-12-23 00:23:12.419 ERROR 19252 --- [           main] o.apache.catalina.core.StandardService   : Failed to start connector [Connector[org.apache.coyote.http11.Http11NioProtocol-8080]]

org.apache.catalina.LifecycleException: Failed to start component [Connector[org.apache.coyote.http11.Http11NioProtocol-8080]]
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
    at org.apache.catalina.core.StandardService.startInternal(StandardService.java:459)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:732)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.startup.Tomcat.start(Tomcat.java:335)
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.initialize(TomcatEmbeddedServletContainer.java:58)
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.<init>(TomcatEmbeddedServletContainer.java:53)
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getTomcatEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:259)
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:140)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.createEmbeddedServletContainer(EmbeddedWebApplicationContext.java:158)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:135)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:476)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122)
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:552)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:293)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:749)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:738)
    at hello.Application.main(Application.java:12)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:53)
    at java.lang.Thread.run(Thread.java:744)
Caused by: org.apache.catalina.LifecycleException: service.getName(): "Tomcat";  Protocol handler start failed
    at org.apache.catalina.connector.Connector.startInternal(Connector.java:1017)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    ... 24 common frames omitted
Caused by: java.net.BindException: Address already in use
    at sun.nio.ch.Net.bind0(Native Method)
    at sun.nio.ch.Net.bind(Net.java:444)
    at sun.nio.ch.Net.bind(Net.java:436)
    at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:214)
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
    at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:473)
    at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:617)
    at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:444)
    at org.apache.catalina.connector.Connector.startInternal(Connector.java:1010)
    ... 25 common frames omitted

2013-12-23 00:23:12.420  INFO 19252 --- [           main] o.apache.catalina.core.StandardService   : Stopping service Tomcat
2013-12-23 00:23:12.430  INFO 19252 --- [           main] nitializer$AutoConfigurationReportLogger : 


=========================
AUTO-CONFIGURATION REPORT
=========================


Positive matches:
-----------------

   MessageSourceAutoConfiguration
      - @ConditionalOnMissingBean (types: org.springframework.context.MessageSource; SearchStrategy: all) found no beans (OnBeanCondition)

   PropertyPlaceholderAutoConfiguration#propertySourcesPlaceholderConfigurer
      - @ConditionalOnMissingBean (types: org.springframework.context.support.PropertySourcesPlaceholderConfigurer; SearchStrategy: current) found no beans (OnBeanCondition)

   ThymeleafAutoConfiguration
      - @ConditionalOnClass classes found: org.thymeleaf.spring3.SpringTemplateEngine (OnClassCondition)
      - @ConditionalOnClass classes found: org.thymeleaf.spring3.SpringTemplateEngine (OnClassCondition)

   ThymeleafAutoConfiguration.DefaultTemplateResolverConfiguration
      - @ConditionalOnMissingBean (names: defaultTemplateResolver; SearchStrategy: all) found no beans (OnBeanCondition)

   ThymeleafAutoConfiguration.ThymeleafDefaultConfiguration
      - @ConditionalOnMissingBean (types: org.thymeleaf.spring3.SpringTemplateEngine; SearchStrategy: all) found no beans (OnBeanCondition)

   ThymeleafAutoConfiguration.ThymeleafViewResolverConfiguration
      - @ConditionalOnClass classes found: javax.servlet.Servlet (OnClassCondition)
      - @ConditionalOnClass classes found: javax.servlet.Servlet (OnClassCondition)

   ThymeleafAutoConfiguration.ThymeleafViewResolverConfiguration#thymeleafViewResolver
      - @ConditionalOnMissingBean (names: thymeleafViewResolver; SearchStrategy: all) found no beans (OnBeanCondition)

   DispatcherServletAutoConfiguration
      - found web application StandardServletEnvironment (OnWebApplicationCondition)
      - @ConditionalOnClass classes found: org.springframework.web.servlet.DispatcherServlet (OnClassCondition)
      - found web application StandardServletEnvironment (OnWebApplicationCondition)
      - @ConditionalOnClass classes found: org.springframework.web.servlet.DispatcherServlet (OnClassCondition)
      - @ConditionalOnBean (types: org.springframework.boot.context.embedded.EmbeddedServletContainerFactory; SearchStrategy: all) found the following [tomcatEmbeddedServletContainerFactory] (OnBeanCondition)

   DispatcherServletAutoConfiguration#dispatcherServlet
      - no DispatcherServlet found (DispatcherServletAutoConfiguration.DefaultDispatcherServletCondition)

   EmbeddedServletContainerAutoConfiguration
      - found web application StandardServletEnvironment (OnWebApplicationCondition)
      - found web application StandardServletEnvironment (OnWebApplicationCondition)

   EmbeddedServletContainerAutoConfiguration.EmbeddedTomcat
      - @ConditionalOnClass classes found: javax.servlet.Servlet,org.apache.catalina.startup.Tomcat (OnClassCondition)
      - @ConditionalOnClass classes found: javax.servlet.Servlet,org.apache.catalina.startup.Tomcat (OnClassCondition)
      - @ConditionalOnMissingBean (types: org.springframework.boot.context.embedded.EmbeddedServletContainerFactory; SearchStrategy: current) found no beans (OnBeanCondition)

   ServerPropertiesAutoConfiguration#serverProperties
      - @ConditionalOnMissingBean (types: org.springframework.boot.context.embedded.properties.ServerProperties; SearchStrategy: all) found no beans (OnBeanCondition)

   WebMvcAutoConfiguration
      - found web application StandardServletEnvironment (OnWebApplicationCondition)
      - @ConditionalOnClass classes found: javax.servlet.Servlet,org.springframework.web.servlet.DispatcherServlet,org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter (OnClassCondition)
      - found web application StandardServletEnvironment (OnWebApplicationCondition)
      - @ConditionalOnClass classes found: javax.servlet.Servlet,org.springframework.web.servlet.DispatcherServlet,org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter (OnClassCondition)
      - @ConditionalOnMissingBean (types: org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; SearchStrategy: all) found no beans (OnBeanCondition)

   WebMvcAutoConfiguration#hiddenHttpMethodFilter
      - @ConditionalOnMissingBean (types: org.springframework.web.filter.HiddenHttpMethodFilter; SearchStrategy: all) found no beans (OnBeanCondition)

   WebMvcAutoConfiguration.WebMvcAutoConfigurationAdapter#defaultViewResolver
      - @ConditionalOnMissingBean (types: org.springframework.web.servlet.view.InternalResourceViewResolver; SearchStrategy: all) found no beans (OnBeanCondition)


Negative matches:
-----------------

   RabbitAutoConfiguration
      - required @ConditionalOnClass classes not found: org.springframework.amqp.rabbit.core.RabbitTemplate,com.rabbitmq.client.Channel (OnClassCondition)

   AopAutoConfiguration
      - required @ConditionalOnClass classes not found: org.aspectj.lang.annotation.Aspect,org.aspectj.lang.reflect.Advice (OnClassCondition)

   BatchAutoConfiguration
      - required @ConditionalOnClass classes not found: org.springframework.batch.core.launch.JobLauncher (OnClassCondition)

   JpaRepositoriesAutoConfiguration
      - required @ConditionalOnClass classes not found: org.springframework.data.jpa.repository.JpaRepository (OnClassCondition)

   MongoRepositoriesAutoConfiguration
      - required @ConditionalOnClass classes not found: com.mongodb.Mongo,org.springframework.data.mongodb.repository.MongoRepository (OnClassCondition)

   DataSourceAutoConfiguration
      - required @ConditionalOnClass classes not found: org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseType (OnClassCondition)

   DataSourceTransactionManagerAutoConfiguration
      - required @ConditionalOnClass classes not found: org.springframework.jdbc.core.JdbcTemplate,org.springframework.transaction.PlatformTransactionManager (OnClassCondition)

   JmsTemplateAutoConfiguration
      - required @ConditionalOnClass classes not found: org.springframework.jms.core.JmsTemplate,javax.jms.ConnectionFactory (OnClassCondition)

   DeviceResolverAutoConfiguration
      - required @ConditionalOnClass classes not found: org.springframework.mobile.device.DeviceResolverHandlerInterceptor,org.springframework.mobile.device.DeviceHandlerMethodArgumentResolver (OnClassCondition)

   HibernateJpaAutoConfiguration
      - required @ConditionalOnClass classes not found: org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean,org.springframework.transaction.annotation.EnableTransactionManagement,javax.persistence.EntityManager,org.hibernate.ejb.HibernateEntityManager (OnClassCondition)

   ReactorAutoConfiguration
      - required @ConditionalOnClass classes not found: reactor.spring.context.config.EnableReactor (OnClassCondition)

   ThymeleafAutoConfiguration.ThymeleafSecurityDialectConfiguration
      - required @ConditionalOnClass classes not found: org.thymeleaf.extras.springsecurity3.dialect.SpringSecurityDialect (OnClassCondition)

   ThymeleafAutoConfiguration.ThymeleafWebLayoutConfiguration
      - required @ConditionalOnClass classes not found: nz.net.ultraq.thymeleaf.LayoutDialect (OnClassCondition)

   EmbeddedServletContainerAutoConfiguration.EmbeddedJetty
      - required @ConditionalOnClass classes not found: org.eclipse.jetty.server.Server,org.eclipse.jetty.util.Loader (OnClassCondition)

   MultipartAutoConfiguration
      - @ConditionalOnClass classes found: javax.servlet.Servlet,org.springframework.web.multipart.support.StandardServletMultipartResolver (OnClassCondition)
      - @ConditionalOnClass classes found: javax.servlet.Servlet,org.springframework.web.multipart.support.StandardServletMultipartResolver (OnClassCondition)
      - @ConditionalOnBean (types: javax.servlet.MultipartConfigElement; SearchStrategy: all) found no beans (OnBeanCondition)

   WebMvcAutoConfiguration.WebMvcAutoConfigurationAdapter#beanNameViewResolver
      - @ConditionalOnBean (types: org.springframework.web.servlet.View; SearchStrategy: all) found no beans (OnBeanCondition)

   WebMvcAutoConfiguration.WebMvcAutoConfigurationAdapter#viewResolver
      - @ConditionalOnBean (types: org.springframework.web.servlet.View; SearchStrategy: all) found no beans (OnBeanCondition)

   WebSocketAutoConfiguration
      - required @ConditionalOnClass classes not found: org.springframework.web.socket.WebSocketHandler (OnClassCondition)



java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:53)
    at java.lang.Thread.run(Thread.java:744)
Caused by: org.springframework.context.ApplicationContextException: Unable to start embedded container; nested exception is org.springframework.boot.context.embedded.EmbeddedServletContainerException: Unable to start embdedded Tomcat
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:138)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:476)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122)
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:552)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:293)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:749)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:738)
    at hello.Application.main(Application.java:12)
    ... 6 more
Caused by: org.springframework.boot.context.embedded.EmbeddedServletContainerException: Unable to start embdedded Tomcat
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.initialize(TomcatEmbeddedServletContainer.java:85)
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.<init>(TomcatEmbeddedServletContainer.java:53)
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getTomcatEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:259)
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:140)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.createEmbeddedServletContainer(EmbeddedWebApplicationContext.java:158)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:135)
    ... 13 more
Caused by: java.lang.IllegalStateException: Tomcat connector in failed state
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.initialize(TomcatEmbeddedServletContainer.java:81)
    ... 18 more

これは私のポートが使用されているためだと思います。私のポート8080が使用されているため、ポート8181を試します。ポート8181にアプリケーションがありません。

tomcat server.xmlでポートを8181に設定しましたが、問題は解決しません

私はこの投稿を見つけます:

Mavenで開始する場合のTomcat(8080ではない)の代替ポート?

しかし、mvn -Dmaven.tomcat.port = 8181 tomcat:run-warを起動した後も同じ問題が発生します

私はmavenがtomcatサーバーにリンクされている方法を本当に理解していませんこれは私のpom.xmlです

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.springframework</groupId>
    <artifactId>gs-serving-web-content</artifactId>
    <version>0.1.0</version>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>0.5.0.M6</version>
    </parent>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.thymeleaf</groupId>
            <artifactId>thymeleaf-spring3</artifactId>
        </dependency>
    </dependencies>

    <properties>
        <start-class>hello.Application</start-class>
    </properties>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

    <repositories>
        <repository>
            <id>spring-milestone</id>
            <url>http://repo.spring.io/libs-milestone</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
    </repositories>

    <pluginRepositories>
        <pluginRepository>
            <id>spring-milestone</id>
            <url>http://repo.spring.io/libs-milestone</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>

</project>

ご協力いただきありがとうございます


まず、これらのポートが最初から「実際に」使用できることを確認してください。* Unixシステム(パス区切り文字から推測している)netstat -tuplenを使用していると思います。ターミナルを開いて実行し、使用されているポートとそのそれぞれのプロセスIDの完全なリストを取得します。Tomcatを開始する前に、そこからポートが使用されていないかどうかを確認します
Saif Asif

はい、私のポート8181は無料です
Ajouve

1
デフォルトのポート(8080)が実行されているかどうかを確認します。Windowsでは> netstat -a -o -nを使用してから、ポートが実行中かどうかに関係なくポートを検索します。実行中の場合は、それに対応するpidをメモします。taskkill / f / pid {pidno}
Sagar Rout

また、設定ファイルのIPが間違っていると、この例外が発生します。
Xaqron

回答:


107

Spring Bootはデフォルトで組み込みのTomcatを使用しますが、を使用せずに処理が異なりtomcat-maven-pluginます。--server.portたとえば、ポート使用パラメータを変更するには:

java -jar target/gs-serving-web-content-0.1.0.jar --server.port=8181

アップデート。代わりに置くserver.port=8181application.properties(またはapplication.yml)。


2
構成で設定することは可能ですか?たとえば、注釈を使用していますか?
Daniil Shevelev 2014年

64
置くserver.port=8181あなたのapplication.propertiesファイルにも動作するはずです。
MarcinZajączkowski14年

クリーンアップしてビルドすることを忘れないでください...それも役立ちます
cheenbabes

4
application.propertiesファイルのより良いオプションは、オーバーライド機能server.port = $ {port:8181}を持つデフォルトを含めることです
Shawn Vader

1
本当にありがとう!私はそのソリューションを一日中検索し、--server.port = 8181を追加した後、解決しました。感謝
gsiradze

46

次のコマンドを実行して、ポートを使用しているプロセスを検索します

lsof -i :<portNumber> | grep LISTEN

あなたの場合、これは->

lsof -i :8080 | grep LISTEN
java    78960 xyxss  119u  IPv6 0x6c20d372bc88c27d      0t0  TCP *:8092 (LISTEN)

78960はプロセスIDであり、次のコマンドを使用してプロセスを強制終了します

kill -9 78960

アプリケーションを再度起動します。


1
Macで動作させるには、次のコマンドを使用する必要がありました:sudo lsof -n -P | grep LISTEN。Macでは、sudoを使用しているときにパスワードの入力を求められます。
Simon

ここで答えてくれてありがとう。このソリューションのみがIntelliJで動作します
AMIC MING

30

/src/main/resources/application.propertiesに別のポート番号(例:8181)を設定します

server.port = 8181


@Junchen Luiそれは単なる回避策だからです。常にこれを行うと、多くの未使用のTomcatが実行されます。そもそもエラーを修正するほうがよい。
Stimpson Cat

ダム、これはxmlやセットアッププロジェクトを構成しなくても実際に機能します
diego matos-keke 2018年


4

IntelliJを使用して、1つのアプリが既に実行されているときにSpringアプリを実行しようとすると、このエラーが発生しました。私は最初のものを止めなければなりませんでした。その後、2番目のアプリを実行してもエラーは返されませんでした。


4

Spring Tool Suiteとアプリケーション停止ボタンの画像

私の場合、サーバーウィンドウを見ると、このプロジェクトで使用したことがないtomcatサーバーのみが表示されていました。私のSpringBootプロジェクトは組み込みのTomcatサーバーを使用し、アプリケーションが終了しても停止しませんでした。赤い矢印で示すこのボタンは、アプリケーションとTomcatサーバーを停止するため、次回アプリケーションを実行するときに、Tomcatのインスタンスがポート8080ですでに実行されているというエラーは発生しません。

実際のエラーメッセージ:

コネクタの構成を確認し、ポート8080でリッスンしているプロセスを特定して停止するか、このアプリケーションを別のポートでリッスンするように構成します。

原因:java.net.BindException:すでに使用されているアドレス原因:org.apache.catalina.LifecycleException:service.getName(): "Tomcat"; プロトコルハンドラーの開始に失敗しました

このチュートリアルで、SpringBoot Consuming Restアプリケーションの完了時にすべてのサービスをシャットダウンする方法を検討します。

スプリングブーツ


3

まず、ポート8080を使用しているユーザーを確認します。

ポート8080が使用中の場合は、リスニングポートを8181に変更します。

IDEAを使用する場合は、開始構成を変更し、[実行]-> [構成の編集] に画像の説明をここに入力します。

mvn spring-bootを使用する場合は、次のコマンドを使用します。

mvn spring-boot:run -Dserver.port=8181

java -jarを使用する場合は、次のコマンドを使用します。

java -jar xxxx.jar --server.port=8181

2

これは、次のように追加のプロパティを設定し、使用可能な任意のポート番号を使用することによってのみ機能しました。

  • YML

/src/main/resources/application.yml

server:
  port: 18181
management:
  port: 9191
tomcat:
  jvmroute: 5478
  ajp:
    port: 4512
    redirectPort: 1236
  • プロパティ

/src/main/resources/application.properties

server.port=18181
management.port=9191
tomcat.jvmroute=5478
tomcat.ajp.port=4512
tomcat.ajp.redirectPort=1236     

1
これでうまくいきました。Spring boot 2.0.3.RELEASEでは、management.portキーはに置き換えられていmanagement.server.portます。
ビニアム

tomcat.jvmroute = 5478は、server.port = 18181とともにアプリケーションの2つのインスタンスを実行するのに役立ちました
Ritesh K

2

ポート番号を削除することをお勧めします。それは私のために働いた

netstat -ano | findstr :yourPortNumber taskkill /PID typeyourPIDhere /F

2

あなたの中application.propertiesのファイル-

/ src / main / resources / application.properties

ポート番号を次のようなものに変更します-

server.port = 8181

または、jarファイルの実行中に代替ポート番号を指定することもできます -java -jar resource-server / build / libs / resource-server.jar --server.port = 8888


2

IDEで別のポート番号を構成できます /src/main/resources/application.properties

server.port = 8081

それ以外の場合は、IDE コンソールタブを右クリックして、[ 終了/すべて切断 ]を選択します。


1

私の場合、Oracle TNSサービスはポート8080を使用していましたが、管理者としてコマンド「netstat-anob」を実行することがわかりました。Windowsのスタートメニューからデータベースのシャットダウンを使用してそのサービスを停止するだけで、問題なくSpringBootアプリを起動できました。

また、8080ポートを使用しているアプリが見つからず、SprintBootアプリを実行したいだけの場合は、[別のユーザーとして実行]をクリックして、VM引数に次のように入力します。-Dserver.port = 0(これにより、ランダムに選択されます)利用可能なポート)または次のように具体的に指定できます:-Dserver.port = 8081

それが役に立てば幸い。


-Dserver.port = 0を変更して、同時に起動した2つのアプリケーションでテストしました。現在、両方が別のポートで開いています
hnahak 2017

1

次の手順に従ってこれを解決できます。

  1. 実行中のプロジェクトを右クリックします。
  2. クリックしてファイル名を指定して実行し、実行構成オプションから。
  3. 新しい実行構成が開きます。[ Spring Boot]タブの下で、オーバーライドプロパティを参照してください。
  4. プロパティと値のペアをとして追加するserver.port=8181か、任意の他のポートを追加します。これにより、デフォルトのポートである8080が上書きされます

1

本当に古い質問です。多分これは便利です。タイトルの問題に焦点を当てると、アプリケーションを起動して、簡単にシャットダウンできます。上記のように、起動する各アプリケーションのポート番号を変更します。

application.properties

#using curl -X POST localhost:8080/actuator/shutdown to avoid:
#netstat -ano | find "8080"
#taskkill /F /PID xxxx (xxxx stands for PID)
management.endpoints.web.exposure.include=*
management.endpoint.shutdown.enabled=true
endpoints.shutdown.enabled=true

この依存関係を追加します。

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

これで、簡単にショットダウンできます

curl -X POST localhost:8080/actuator/shutdown

1

コンソールで右クリックし、[終了/すべて切断]オプションをクリックします。

または

コンソールウィンドウの右上にある[選択したコンソールを表示]アイコンをクリックし、ポートを保持しているコンソールを選択して終了します。


1

このエラーは基本的に、特定のポートが空いていないときに発生します。したがって、2つの解決策があります。それを使用しているサービスを強制終了または閉じることにより、そのポートを解放するか、別のポートでアプリケーション(tomcat)を実行できます。

解決策1:ポートを解放する

Linuxマシンでは、ポートのコンシューマのプロセスIDを見つけて強制終了できます。次のコマンドを使用します(デフォルトのポートは8080であると想定しています)

netstat -pnltu | grep -i "8080"

上記のコマンドの出力は次のようになります。

tcp6   0  0 :::8080    :::*      LISTEN      20674/java 

次に、そのプロセスIDでプロセスを簡単に強制終了できます。

kill 20674

Windowsマシンで、processidの使用を検索しますnetstat -ano -p tcp |find "8080"。プロセスtaskkill /F /PID 1234を強制終了するには、(1234の代わりに、設立されたプロセスIDを入力してください)。

解決策2:デフォルトのポートを変更する

開発プロセスでは、開発者はport 8080簡単に変更できるものを使用します。次の指定を使用して、application.propertiesプロジェクト(/src/main/resources/application.properties)のファイルで目的のポート番号を指定する必要があります。

server.port=8081

.jarファイルの実行中に代替ポート番号を設定することもできます

- java -jar spring-boot-application.jar --server.port=8081

次のように他のポートを変更する必要がある場合もあります(必ずしもそうとは限りません)。

management.port=
tomcat.jvmroute=
tomcat.ajp.port=
tomcat.ajp.redirectPort=
etc...

1

これは、ポートがすでにバックグラウンドで実行されているためです。そのため、Eclipseを再起動して再試行できます。または、application.propertiesファイルを開いて、「server.port」の値を次のような他の値に変更します。-8000/8181


0

アプリケーションを閉じ、新しいポートに変更した後、アプリケーションを再起動します。

${port:8181}

新しい未使用のポートを使用できます。ここでは、ポート8181を使用しました。


@Bruceどうしてこれが答えを出そうとしないのですか?明確な試みが見られます。アプリケーションを閉じます。ポートの変更; そしてそれを再起動します。それは完全に間違っているかもしれませんが、それが答えようとする試みではないという意味ではありません。
元に戻す

0

再度実行する前にアプリケーション(Eclipseの赤い四角)を停止することで、この問題を解決しました。停止しない場合、アプリケーションは実行モードのままなので、ポートは引き続き使用されます。


0

Spring BootのWebサポートで使用されるデフォルトのポートであるポート8080でリッスンしている別のプロセスがあります。そのプロセスを停止するか、別のポートでリッスンするようにアプリを構成する必要があります。

server.port = 4040(例)をsrc / main / resources / application.propertiesに追加することで、ポート構成を変更できます


0

基本的に、デフォルトのサーバーは通常、ポート8080でバックグラウンドで実行されます。services.mscを開き、tomcatサーバーを停止して、Spring Bootアプリケーションをもう一度実行してみてください。


0

EclipseでSpring Tool Suiteがインストールされている場合は、Boot Dashboardに移動し、エクスプローラーでローカルを展開して、ポート8080で実行されているアプリケーションを右クリックし、アプリケーションを再実行する前に停止します。


0

次のファイルでポート番号を変更しようとします-/src/main/resources/application-prod.yml

そして、このファイル内で私はこの変更を行いました:

サーバー:ポート:8100(またはあなたが望むもの)

これがあなたのためにうまくいくことを願っています


0

Windows向けのソリューションを探していましたが、見つかりませんでした。最後に、ポートを使用してぶら下がっているjavaアプリケーションがあることがわかりました。たぶんそれは春のアプリケーションの初期のインスタンスであり、プロセスを終了しました。

Microsoftのtcpviewを使用しました。コンピューターのどのポートを使用しているかを示すサービス/アプリケーションが表示されます。

ここに画像の説明を入力してください

プロセスを終了できます。これで完了です。


-1

同じ問題、つまりプロトコルハンドラーの開始に失敗しました。原因は、ポートがすでに使用されていることでした。そのポートが使用中かどうかを確認しました。そうだった。そのため、そのポートで実行されていたプロセスを強制終了し、Spring Bootアプリケーションを再起動しました。そしてそれはうまくいった。:)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.