उपयोग में पहले से ही स्प्रिंग एप्लिकेशन एड्रेस लॉन्च करना


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 पर सेट किया है लेकिन समस्या बनी रहती है

मुझे यह पोस्ट मिली:

मावेन के साथ शुरू होने पर टॉमकैट के लिए वैकल्पिक बंदरगाह (8080 नहीं)?

लेकिन मुझे mvan -Dmaven.tomcat.port = 8181 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>

आपकी सहायता के लिए धन्यवाद


पहले सुनिश्चित करें कि ये पोर्ट 'वास्तव में' के साथ उपलब्ध हैं। अब मुझे लगता है कि आप कुछ * यूनिक्स प्रणाली का उपयोग कर रहे हैं (मैं पथ परिसीमन से अनुमान लगा रहा हूं), अपने टर्मिनल को खोलें और netstat -tuplenअपने संबंधित प्रक्रिया के साथ उपयोग किए गए बंदरगाहों की पूरी सूची प्राप्त करने के लिए चलाएं । वहां से सत्यापित करें कि क्या टोमैट शुरू करने से पहले बंदरगाहों का उपयोग किया जाता है
सैफ आसिफ

हां मेरा पोर्ट 8181 नि: शुल्क है
अजौवे

1
जांचें कि क्या डिफ़ॉल्ट पोर्ट (8080) चल रहा है या नहीं। विंडोज में> netstat -a -o -n का उपयोग करें और फिर अपने पोर्ट को सर्च करें कि क्या चल रहा है या नहीं .... यदि यह चल रहा है, तो इसके अनुरूप पीड को नोट करें। taskkill / f / pid {pidno}
सागर

कॉन्फ़िगरेशन फ़ाइल में भी गलत IP इस अपवाद का कारण बनता है।
Xaqron

जवाबों:


107

स्प्रिंग बूट डिफ़ॉल्ट रूप से एम्बेडेड टॉमकैट का उपयोग करता है, लेकिन यह बिना उपयोग किए इसे अलग तरीके से संभालता है tomcat-maven-plugin--server.portउदाहरण के लिए पोर्ट उपयोग पैरामीटर बदलने के लिए:

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

अपडेट करें । वैकल्पिक रूप server.port=8181से application.properties(या application.yml) में डाल दिया ।


2
क्या इसे कॉन्फ़िगरेशन में सेट करना संभव है? उदाहरण के लिए एनोटेशन का उपयोग करना?
डेनियल शेवलेव

64
server.port=8181अपने एप्लिकेशन में डाल देना। फ़ाइल में भी काम करना चाहिए।
Marcin Zaj Marczkowski

साफ करने और निर्माण करने के लिए मत भूलना ... यह भी मदद करता है
cheenbabes

4
Application.properties फ़ाइल के लिए एक बेहतर विकल्प ओवरराइड क्षमता सर्वर के साथ एक डिफ़ॉल्ट सहित है ।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 प्रक्रिया आईडी है, प्रक्रिया को मारने के लिए निम्नलिखित कमांड का उपयोग करें

kill -9 78960

एप्लिकेशन को फिर से लॉन्च करें।


1
मुझे अपने मैक पर काम करने के लिए इस कमांड का उपयोग करना पड़ा: sudo lsof -n -P | ग्रीप लिस्टेन। जैसे ही आप sudo का उपयोग कर रहे हैं, Mac आपको अपने पासवर्ड में टाइप करने के लिए प्रेरित करेगा।
साइमन

यहाँ उत्तर के लिए धन्यवाद। केवल यह समाधान IntelliJ के साथ काम करता है
AMIC MING

30

किसी अन्य पोर्ट नंबर (जैसे: 8181) को /src/main/resources/application.propreties में कॉन्फ़िगर करें

server.port = 8181


@ जून्चेन लुई ऐसा इसलिए है क्योंकि यह सिर्फ एक वर्कअराउंड है। यदि आप हर समय ऐसा करते हैं, तो आपके पास बहुत सारे अप्रयुक्त टोमैट्स चलेंगे। पहले से बेहतर त्रुटि को ठीक करें।
स्टिम्पसन कैट

बांध, यह वास्तव में किसी भी xml या सेटअप projecto को विन्यस्त बिना काम करता है
keke - डिएगो माटोस

12

दोबारा लॉन्च करने से पहले आपको सर्वर को बंद करना होगा। लाल बॉक्स आइकन या सर्वर दृश्य के लिए देखें।


हां, वह समस्या ग्रहण में थी। यहां तरीका देखें: NetBeans में बिलाव को रोकने के लिए है stackoverflow.com/questions/543439/...
टोमाज़ Mularczyk

4

IntelliJ का उपयोग करते हुए, मुझे यह त्रुटि तब मिली जब मैंने एक स्प्रिंग ऐप चलाने की कोशिश की, जबकि एक ऐप पहले से ही चल रहा था। मुझे पहले वाले को रोकना था। उसके बाद, दूसरा ऐप चलाने से कोई त्रुटि नहीं हुई।


4

स्प्रिंग टूल सूट और स्टॉप एप्लिकेशन बटन की छवि

मेरे मामले में सर्वर विंडो में केवल एक टॉमकैट सर्वर दिखाया गया था जो मैंने कभी इस परियोजना के लिए उपयोग नहीं किया था। मेरे स्प्रिंगबूट प्रोजेक्ट ने एक एम्बेडेड टोमैट सर्वर का उपयोग किया और जब मेरा आवेदन समाप्त हुआ तो यह नहीं रुका। यह बटन जो मैं एक लाल तीर के साथ इंगित करता हूं, एप्लिकेशन और टॉमकैट सर्वर को रोक देगा इसलिए अगली बार जब मैं एप्लिकेशन चलाता हूं तो मुझे यह त्रुटि नहीं मिलेगी कि टॉमकैट का एक इंस्टेंस पहले से ही 8080 पोर्ट पर चल रहा है।

वास्तविक त्रुटि संदेश:

कनेक्टर के कॉन्फ़िगरेशन की पुष्टि करें, पोर्ट 8080 पर सुनने वाली किसी भी प्रक्रिया को पहचानें और रोकें, या दूसरे पोर्ट पर सुनने के लिए इस एप्लिकेशन को कॉन्फ़िगर करें।

इसके कारण: java.net.BindException: पहले से ही उपयोग में आने वाला पता: org.apache.catalina.LifecycleException: service.getName (): "टॉमकैट"; प्रोटोकॉल हैंडलर प्रारंभ विफल

मैं अब इस ट्यूटोरियल https://spring.io/guides/gs/consuming-rest/ में अपने स्प्रिंगबूट कंजम्पशन रेस्ट एप्लिकेशन के पूरा होने पर सभी सेवाओं को बंद करने का एक तरीका देखूंगा।

वसंत-बूट


3

सबसे पहले, जांचें कि पोर्ट 8080 का उपयोग कौन करता है।

  • टेलनेट लोकलहोस्ट 8080
  • http: // localhost: 8080 खोलने के लिए ब्राउज़र का उपयोग करें

यदि पोर्ट 8080 उपयोग में है, तो सुनने वाले पोर्ट को 8181 में बदल दें।

यदि आप IDEA का उपयोग करते हैं, तो प्रारंभ कॉन्फ़िगरेशन को संशोधित करें, रन-> कॉन्फ़िगरेशन संपादित करें यहां छवि विवरण दर्ज करें

यदि आप mvan स्प्रिंग-बूट का उपयोग करते हैं, तो कमांड का उपयोग करें:

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

यदि आप जावा -जर का उपयोग करते हैं, तो कमांड का उपयोग करें:

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
इसने मेरे लिए काम किया। स्प्रिंग बूट में 2.0.3। कृपया, management.portकुंजी को बदल दिया जाता है management.server.port

tomcat.jvmroute = 5478 ने मुझे server.port = 18181 के साथ आवेदन के दो उदाहरणों को चलाने में मदद की
रितेश K

2

मैं पोर्ट नंबर को मारने का सुझाव दूंगा। इसने मेरे लिए काम किया

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

2

आपके आवेदन में फ़ाइल में -

/ src / main / resource / application.properties

पोर्ट नंबर को कुछ इस तरह से बदलें -

server.port = 8181

या वैकल्पिक रूप से आप अपनी जार फ़ाइल निष्पादित करते समय वैकल्पिक पोर्ट नंबर प्रदान कर सकते हैं - java -jar रिसोर्स-सर्वर / बिल्ड / लिबास / रिसोर्स- server.jar --server.port = 8888


2

आप अपने IDE /src/main/resources/application.properties में एक और पोर्ट नंबर कॉन्फ़िगर कर सकते हैं

server.port = 8081

अन्यथा IDE कंसोल टैब पर राइट क्लिक करें और सभी समाप्त करें / डिस्कनेक्ट करें चुनें


1

मेरे मामले में, ओरेकल टीएनएस सेवा पोर्ट 8080 का उपयोग कर रही थी, ने पाया कि एक व्यवस्थापक के रूप में कमांड "नेटस्टैट - एनओबी" को चलाने के लिए। बस उस सेवा को रोकने के लिए विंडोज स्टार्ट मेनू से शटडाउन डेटाबेस का उपयोग किया गया और स्प्रिंगबूट ऐप को बिना किसी समस्या के शुरू करने में सक्षम था।

इसके अलावा अगर आप यह पता नहीं लगा सकते हैं कि कौन सा ऐप 8080 पोर्ट का उपयोग कर रहा है और आप स्प्रिंटबूट ऐप को चलाना चाहते हैं, तो आप रन अस पर क्लिक कर सकते हैं ... और वीएम के तर्कों में दर्ज करें: -Dserver.port = 0 (यह किसी भी यादृच्छिक को चुन लेगा उपलब्ध पोर्ट) या आप विशिष्ट हो सकते हैं जैसे: -Dserver.port = 8081

आशा करता हूँ की ये काम करेगा।


मैंने अपने -Dserver.port = 0 को बदलने की कोशिश की और एक ही समय में लॉन्च किए गए दो अनुप्रयोगों के साथ परीक्षण किया। अब दोनों अलग-अलग पोर्ट में
खुलते हैं

1

आप इन चरणों को हल कर सकते हैं:

  1. आपके द्वारा चलाए जा रहे प्रोजेक्ट पर राइट क्लिक करें।
  2. विकल्प से Run as और Run कॉन्फ़िगरेशन पर क्लिक करें ।
  3. एक नया रन कॉन्फ़िगरेशन खुल जाएगा। स्प्रिंग बूट टैब के तहत ओवरराइड गुणों के लिए देखें
  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

यह त्रुटि मूल रूप से तब होती है जब विशिष्ट पोर्ट मुक्त नहीं होता है। तो दो समाधान हैं, आप उस पोर्ट को उस सेवा को मारकर या बंद करके मुक्त कर सकते हैं जो इसका उपयोग कर रहा है या आप एक अलग पोर्ट पर अपना एप्लिकेशन (टॉमकैट) चला सकते हैं।

समाधान 1: बंदरगाह को मुक्त करें

एक लिनक्स मशीन पर आप पोर्ट के उपभोक्ता की प्रक्रिया-आईडी पा सकते हैं और फिर उसे मार सकते हैं। निम्न कमांड का उपयोग करें (यह मान लिया गया है कि डिफ़ॉल्ट पोर्ट 8080 है)

netstat -pnltu | grep -i "8080"

उपर्युक्त कमांड का आउटपुट कुछ इस तरह होगा:

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

तब आप इसकी प्रक्रिया को आसानी से मार सकते हैं:

kill 20674

एक प्रक्रिया का उपयोग करने के लिए एक विंडोज़ मशीन पर netstat -ano -p tcp |find "8080"। प्रक्रिया के उपयोग को मारने के लिए taskkill /F /PID 1234(1234 के बजाय स्थापित प्रक्रिया में प्रवेश करें)।

समाधान 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

ऐसा इसलिए है क्योंकि पोर्ट पहले से ही बैकग्राउंड में चल रहा है। आप ग्रहण को फिर से शुरू कर सकते हैं और फिर से कोशिश कर सकते हैं। या फ़ाइल application.properties को खोलें और 'server.port' के मान को पूर्व जैसे कुछ अन्य मान में बदलें: - 8000/8181


0

एप्लिकेशन को बंद करें, फिर एक नए पोर्ट में बदलने के बाद इसे पुनरारंभ करें:

${port:8181}

आप किसी भी नए अप्रयुक्त पोर्ट का उपयोग कर सकते हैं। यहाँ, मैंने पोर्ट 8181 का उपयोग किया।


@ ब्रूस यह उत्तर देने का प्रयास कैसे नहीं करता है? मुझे एक स्पष्ट प्रयास दिखाई देता है: आवेदन को बंद करना; बंदरगाह बदलना; और इसे पुनः आरंभ करना। यह पूरी तरह से गलत हो सकता है, लेकिन इसका मतलब यह नहीं है कि यह जवाब देने का प्रयास नहीं है।
पूर्ववत

0

मैंने इस समस्या को हल किया, फिर से चलाने से पहले एप्लिकेशन (ग्रहण में लाल वर्ग) को रोक दें । यदि आप इसे बंद नहीं करते हैं, तो एप्लिकेशन रन मोड में रहता है, इसलिए पोर्ट अभी भी उपयोग किया जाता है।


0

आपके पास एक और प्रक्रिया है जो पोर्ट 8080 पर सुन रही है जो डिफ़ॉल्ट पोर्ट है जो स्प्रिंग बूट के वेब समर्थन द्वारा उपयोग किया जाता है। आपको या तो उस प्रक्रिया को रोकना होगा या दूसरे पोर्ट पर सुनने के लिए अपने ऐप को कॉन्फ़िगर करना होगा।

आप src / main / resource / application.properties के लिए server.port = 4040 (उदाहरण के लिए) जोड़कर पोर्ट कॉन्फ़िगरेशन बदल सकते हैं


0

मूल रूप से डिफ़ॉल्ट सर्वर आमतौर पर पोर्ट 8080 की पृष्ठभूमि पर चलता है। Services.msc खोलें और tomcat सर्वर को बंद करें और स्प्रिंग बूट एप्लिकेशन को फिर से चलाने का प्रयास करें।


0

एक्लिप्स में, यदि स्प्रिंग टूल सूट स्थापित है, तो आप बूट डैशबोर्ड पर जा सकते हैं और एक्सप्लोरर में स्थानीय का विस्तार कर सकते हैं और पोर्ट 8080 पर चल रहे एप्लिकेशन पर राइट क्लिक करें और अपना एप्लिकेशन चलाने से पहले इसे रोक दें।


0

मैं निम्नलिखित फ़ाइल में पोर्ट नंबर बदलने की कोशिश करता हूं - /src/main/resources/application-prod.yml

और इस फाइल के अंदर मैंने यह बदलाव किया है:

सर्वर: पोर्ट: 8100 (या आप जो भी चाहते हैं)

मुझे उम्मीद है कि यह आपके लिए अच्छा काम करेगा


0

मैं विंडोज के लिए एक समाधान के लिए देख रहा था, लेकिन कोई भी नहीं मिला। अंत में, यह पता लगाया गया कि पोर्ट का उपयोग करके एक झूलने वाला जावा अनुप्रयोग है। हो सकता है कि यह वसंत आवेदन का पहला उदाहरण है और इस प्रक्रिया को समाप्त कर दिया।

मैंने Microsoft से tcpview का उपयोग किया । यह आपके कंप्यूटर पर किस पोर्ट का उपयोग कर सेवाओं / अनुप्रयोगों को दिखाता है।

यहां छवि विवरण दर्ज करें

आप प्रक्रिया को समाप्त कर सकते हैं। और हो गया!


-1

मैं एक ही मुद्दा हो रहा था, यानी प्रोटोकॉल हैंडलर शुरू असफल रहा । कारण था बंदरगाह से प्रयोग में है । मैंने पाया कि पोर्ट उपयोग में था या नहीं। ये था। इसलिए मैंने उस पोर्ट पर चल रही प्रक्रिया को मार दिया और अपने स्प्रिंग बूट एप्लिकेशन को पुनः आरंभ किया। और इसने काम किया। :)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.