2016-09-07 2 views
7

Я пытаюсь создать простое приложение SpringBoot. Когда я бегу моя весна загрузки приложения это отключение непосредственно после запуска, ниже лог консоли:Запуск приложения загрузки Spring сразу после запуска

. ____   _   __ _ _ 
/\\/___'_ __ _ _(_)_ __ __ _ \ \ \ \ 
(()\___ | '_ | '_| | '_ \/ _` | \ \ \ \ 
\\/ ___)| |_)| | | | | || (_| | )))) 
    ' |____| .__|_| |_|_| |_\__, |//// 
=========|_|==============|___/=/_/_/_/ 
:: Spring Boot :: (v1.4.1.BUILD-SNAPSHOT) 

2016-09-06 18:02:35.152 INFO 22216 --- [   main] com.example.SpringBootDemo1Application : Starting SpringBootDemo1Application on IN-FMCN882 with PID 22216 (E:\workspace\springBoot\SpringBootDemo1\target\classes started by Rahul.Tyagi in E:\workspace\springBoot\SpringBootDemo1) 
2016-09-06 18:02:35.158 INFO 22216 --- [   main] com.example.SpringBootDemo1Application : No active profile set, falling back to default profiles: default 
2016-09-06 18:02:35.244 INFO 22216 --- [   main] s.c.a.AnnotationConfigApplicationContext : Refreshing org.spring[email protected]14dd9eb7: startup date [Tue Sep 06 18:02:35 IST 2016]; root of context hierarchy 
2016-09-06 18:02:36.527 INFO 22216 --- [   main] o.s.j.e.a.AnnotationMBeanExporter  : Registering beans for JMX exposure on startup 
2016-09-06 18:02:36.546 INFO 22216 --- [   main] com.example.SpringBootDemo1Application : Started SpringBootDemo1Application in 1.781 seconds (JVM running for 2.376) 
2016-09-06 18:02:36.548 INFO 22216 --- [  Thread-1] s.c.a.AnnotationConfigApplicationContext : Closing org.spring[email protected]14dd9eb7: startup date [Tue Sep 06 18:02:35 IST 2016]; root of context hierarchy 
2016-09-06 18:02:36.550 INFO 22216 --- [  Thread-1] o.s.j.e.a.AnnotationMBeanExporter  : Unregistering JMX-exposed beans on shutdown 

Ниже мой код:

SpringBootDemo1Application.java

import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.EnableAutoConfiguration; 
import org.springframework.context.annotation.ComponentScan; 
import org.springframework.context.annotation.Configuration; 
import org.springframework.stereotype.Controller; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.ResponseBody; 

@Configuration 
@EnableAutoConfiguration 
@ComponentScan 
@Controller 
public class SpringBootDemo1Application { 


    @ResponseBody 
    @RequestMapping("/") 
    public String entry(){ 
     return "My spring boot application"; 
    } 

    public static void main(String[] args) { 
     SpringApplication.run(SpringBootDemo1Application.class, args); 
    } 
} 

ПОМ. 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>com.example</groupId> 
    <artifactId>demo</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>jar</packaging> 

    <parent> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-parent</artifactId> 
     <version>1.4.1.BUILD-SNAPSHOT</version> 
     <relativePath /> <!-- lookup parent from repository --> 
    </parent> 

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

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

Я хочу, чтобы сервер работал, чтобы клиент мог ударить его для ответа. Пожалуйста, предложите.

+0

ли вы пытаетесь с надлежащей версией версии 1.4.0.RELEASE для стартера загрузки весны? –

+1

Можете ли вы также попробовать выполнить команду «mvn dependency: tree» и проверить, существует ли зависимость проекта tomcat в проекте. –

+0

как вы запускали приложение? – kuhajeyan

ответ

5

Единственное возможное объяснение, о котором я могу думать, заключается в том, что встроенная банку tomcat не включена в зависимости/jar. Поскольку вы уже определили зависимость «spring-boot-starter-web», она также должна транзитивно вытягивать зависимые зависимостей tomcat. Но почему-то это исключено.

Вещи, чтобы испытать.

  1. Выполнить «МВН зависимость: дерево» и проверить, существует ли зависимости Tomcat и в «компилировать» Сфера
  2. Изменения пружины версии загрузчика стартера 1.4.0.RELEASE.
+0

зависимостей tomcat есть до и после выполнения команды «mvn dependency: tree» –

+0

После изменения Spring стартовая версия версии 1.4.0.RELEASE, она начинает показывать ошибку компиляции «не может разрешить класс ComponentScan, Component, Configuration». –

+0

Выполните «mvn clean install», чтобы maven загрузил необходимые банки для новой версии. Если ошибка по-прежнему сохраняется, вы также можете вставлять операторы импорта в свой класс. –

0

Если мы не используем версию весны .RELEASE, нам нужно добавить ниже репозитории в наш файл pom.xml.

И мы можем использовать команду «mvn spring-boot: run», чтобы запустить наше весеннее приложение из командной строки.

<!-- (you don't need this if you are using a .RELEASE version) --> 
<repositories> 
     <repository> 
      <id>spring-snapshots</id> 
      <url>http://repo.spring.io/snapshot</url> 
      <snapshots><enabled>true</enabled></snapshots> 
     </repository> 
     <repository> 
      <id>spring-milestones</id> 
      <url>http://repo.spring.io/milestone</url> 
     </repository> 
    </repositories> 
    <pluginRepositories> 
     <pluginRepository> 
      <id>spring-snapshots</id> 
      <url>http://repo.spring.io/snapshot</url> 
     </pluginRepository> 
     <pluginRepository> 
      <id>spring-milestones</id> 
      <url>http://repo.spring.io/milestone</url> 
     </pluginRepository> 
    </pluginRepositories> 
0

Что для меня решило обновлять ссылку «parent» в pom.xml.

это мой рабочий pom.xml:

<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>com.boot</groupId> 
<artifactId>project-boot</artifactId> 
<version>0.0.1-SNAPSHOT</version> 
<packaging>jar</packaging> 

<parent> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-parent</artifactId> 
    <version>1.5.1.RELEASE</version> 
</parent> 

<name>project-boot</name> 
<url>http://maven.apache.org</url> 

<properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
</properties> 

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

0

Он работал, когда я изменил пружинные версии загрузчика следующим образом:

<parent> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-parent</artifactId> 
    <version>1.4.0.RELEASE</version> 
    </parent> 
3

Попробуйте добавить server.port=someAvailablePortNumber в файле application.properties, расположенном в папка «resources».

У меня также была такая же проблема. попробовал много изменений, предложенных в файле pom.xml, но ничего не сработало для меня. В моем случае порт 8080 недоступен, поэтому приложение не смогло запустить tomcat с использованием порта по умолчанию (т. Е .: 8080), в результате чего он немедленно отключился.

Изменение номера порта помогло запустить tomcat, и приложение начало работать. Надеюсь, это поможет :)

0

В вашей основной функции «SpringApplication.run (Main.class, args.close()); не должно быть близко, это должно быть как «SpringApplication.run (Main.класс, арг);»

. Пример:

@SpringBootApplication 
public class Main{ 
    public static void main(String[] args) { 
    SpringApplication.run(Main.class, args); 
    } 
} 
0

Проверьте журнал конфигурации, может быть, вы пытаетесь сохранить журналы в ту папку, которая не может быть создана

<appender name="allFileAppender" class="ch.qos.logback.core.rolling.RollingFileAppender"> 
     <file>/var/log/app/all.log</file> 
     ... 
</appender> 
Смежные вопросы