2017-02-15 128 views
1

我有在eclipse中創建的spring boot maven項目。於是我進口其終極的IntelliJ,一切順利,單擊運行和:來自Eclipse的Spring Boot maven項目在Intellij中不起作用

並在此之後,我有錯誤:

2017-02-15 12:46:58.459 ERROR 6020 --- [ restartedMain] o.s.boot.SpringApplication    : Application startup failed 

java.lang.IllegalStateException: Could not evaluate condition on org.springframework.boot.devtools.autoconfigure.DevToolsDataSourceAutoConfiguration due to javax/servlet/Filter not found. Make sure your own configuration does not rely on that class. This can also happen if you are @ComponentScanning a springframework package (e.g. if you put a @ComponentScan in the default package by mistake) 

.... 

2017-02-15 12:46:58.478 ERROR 6020 --- [ restartedMain] o.s.b.f.s.DefaultListableBeanFactory  : Destroy method on bean with name 'org.springframework.boot.autoconfigure.internalCachingMetadataReaderFactory' threw an exception 

java.lang.IllegalStateException: ApplicationEventMulticaster not initialized - call 'refresh' before multicasting events via the context: org.spring[email protected]2f6c79e1: startup date [Wed Feb 15 12:46:56 CET 2017]; root of context hierarchy 

問題出在哪裏?

我的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>com.twistezo</groupId> 
<artifactId>StickyNotes</artifactId> 
<version>0.0.1-SNAPSHOT</version> 
<packaging>war</packaging> 

<name>StickyNotes</name> 
<description>StickyNotes SpringBoot app</description> 

<parent> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-parent</artifactId> 
    <version>1.4.4.RELEASE</version> 
    <relativePath/> <!-- lookup parent from repository --> 
</parent> 

<properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> 
    <java.version>1.8</java.version> 
</properties> 

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

    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-tomcat</artifactId> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-test</artifactId> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-thymeleaf</artifactId> 
    </dependency> 
    <dependency> 
    <groupId>org.thymeleaf.extras</groupId> 
     <artifactId>thymeleaf-extras-springsecurity4</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-devtools</artifactId> 
     <optional>true</optional> 
    </dependency> 
    <dependency> 
     <groupId>net.sourceforge.nekohtml</groupId> 
     <artifactId>nekohtml</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-security</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-data-jpa</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>mysql</groupId> 
     <artifactId>mysql-connector-java</artifactId> 
    </dependency> 
</dependencies> 

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

入門級

@SpringBootApplication 
public class StickyNotesApplication { 

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

您是否在IDEA中使用Spring Boot運行/調試配置?將'spring-boot-starter-tomcat'範圍更改爲'compile'有幫助嗎?請[見相關討論](https://intellij-support.jetbrains.com/hc/en-us/community/posts/115000088004)。 – CrazyCoder

+0

將'spring-boot-starter-tomcat'範圍更改爲'compile'有幫助。謝謝@ CrazyCoder – twistezo

回答

2

a known issue與IntelliJ IDEA的Maven支持和provided依賴。

解決您的問題的方法是將spring-boot-starter-tomcat依賴範圍從provided更改爲compile

另請參見a related discussion對於類似的情況,但具有不同的依賴性。

相關問題