SpringBootApplication无法解析为Spring工具套件和maven中的类型错误

问题描述:

我在spring工具套件中创建了maven项目。我创建了具有所需依赖性的pom.xml,但由于“SpringBootApplication无法解析为类型”而面临错误。 我尝试了几个解决方案,如Maven - >更新项目...,清洁项目,删除Maven(.m2)的本地存储库目录等...我也尝试创建另一个Maven项目,但仍然是相同的错误。SpringBootApplication无法解析为Spring工具套件和maven中的类型错误

我觉得这是eclipse的spring工具套件与maven的问题。 是否有任何解决方案像通过日食或其他任何补丁? 在此先感谢!

的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>io.javabrains.springbootquickstart</groupId> 
    <artifactId>cource.api</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <name>Java Brains Cource API</name> 
    <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-parent --> 
    <parent> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-parent</artifactId> 
     <version>1.5.8.RELEASE</version> 
    </parent> 
    <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-parent --> 
    <dependencies> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-parent</artifactId> 
      <version>1.5.8.RELEASE</version> 
      <type>pom</type> 
     </dependency> 
    </dependencies> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
      </plugin> 
     </plugins> 
    </build> 
    <properties> 
     <java.version>1.8</java.version> 
    </properties> 
</project> 
+0

你是否已经尝试命令mvn干净安装从命令行下你的项目? –

+0

'......不能解析为类型“表示导入缺失或无法解析。在后一种情况下,“导入...无法解决”是您应该查看的错误。你有这样的错误吗? – howlger

您还没有添加正确的依赖关系。

您应该添加

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

的依赖(在<dependencies>)代替spring-boot-starter-parent。 父只定义了版本,但实际上并没有添加任何依赖项(您在Maven中将其用作<parent>)。

如果您有测试,还可以添加spring-boot-starter-test

我也建议(在文件 - >新建 - >其他>春季启动项目也可从STS)使用https://start.spring.io/生成一个工作弹簧引导基地项目。

+0

谢谢! 我明白这个问题,这是因为提到的helospark的不正确的依赖。 – Ameet

<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>io.javabrains.springbootquickstart</groupId> 
<artifactId>cource.api</artifactId> 
<version>0.0.1-SNAPSHOT</version> 
<name>Java Brains Cource API</name> 

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

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

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

<properties> 
    <java.version>1.8</java.version> 
</properties> 

</project> 

将其复制/粘贴到您的POM.xml中。更新Maven项目,它将获取所需的JAR。