代码之家  ›  专栏  ›  技术社区  ›  Sandeepan Nath

springboot注释和导入不能在Intellij-IDE上解析

  •  0
  • Sandeepan Nath  · 技术社区  · 6 年前

    Cannot resolve @SpringBootApplication
    

    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.in28minutes.database</groupId>
        <artifactId>database-demo</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <packaging>jar</packaging>
    
        <name>database-demo</name>
        <description>Demo project for Spring Boot</description>
    
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.1.11.RELEASE</version>
            <!--<version>1.5.2.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-data-jpa</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-jdbc</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
    
            <dependency>
                <groupId>com.h2database</groupId>
                <artifactId>h2</artifactId>
                <scope>runtime</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-actuator</artifactId>
            </dependency>
    
        </dependencies>
    
        <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
            </plugins>
        </build>
    
        <repositories>
            <repository>
                <id>spring-snapshots</id>
                <name>Spring Snapshots</name>
                <url>https://repo.spring.io/snapshot</url>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </repository>
            <repository>
                <id>spring-milestones</id>
                <name>Spring Milestones</name>
                <url>https://repo.spring.io/milestone</url>
                <snapshots>
                    <enabled>false</enabled>
                </snapshots>
            </repository>
        </repositories>
    
        <pluginRepositories>
            <pluginRepository>
                <id>spring-snapshots</id>
                <name>Spring Snapshots</name>
                <url>https://repo.spring.io/snapshot</url>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </pluginRepository>
            <pluginRepository>
                <id>spring-milestones</id>
                <name>Spring Milestones</name>
                <url>https://repo.spring.io/milestone</url>
                <snapshots>
                    <enabled>false</enabled>
                </snapshots>
            </pluginRepository>
        </pluginRepositories>
    
    
    </project>
    

    我有另一个设置,使用的是springboot1.5.2.RELEASE。

    看来,所有进口的新项目都在抛出同样的问题。 例如。 https://github.com/callicoder/spring-boot-actuator-demo

    更新

    我意识到我的主要项目有一些依赖性(maven存储库从远程服务器下载)。其定义见.m2/设置.xml.

    [错误]无法在项目执行器演示上执行目标:无法解析项目的依赖项com.示例:执行机构-演示:jar:0.0.1-SNAPSHOT:未能在处收集依赖项org.springframework.boot:弹簧靴启动器-执行机构:震击器:2.1.11.RELEASE:未能读取的项目描述符org.springframework.boot:弹簧靴启动器-执行机构:震击器:2.1.11.RELEASE:无法传输项目org.springframework.boot:弹簧靴启动器-执行机构:pom:2.1.11.从/到nexus的释放( https://project.repository.com/repository/maven-public/ ):无法传输文件: https://project.repository.com/repository/maven-public/org/springframework/boot/spring-boot-starter-actuator/2.1.11.RELEASE/spring-boot-starter-actuator-2.1.11.RELEASE.pom . 返回代码为:502,Rea十四行诗:坏网关。->[帮助1]

    我备份了设置.xml然后把它取下来。我运行了mvncleanfresh,这次它从mvn远程存储库下载了工件,问题得到了解决。

    不确定什么是正确的切换方式设置.xml对于我的工作项目和演示项目,因为前者需要这些设置。

    0 回复  |  直到 6 年前
        1
  •  2
  •   mikeb    6 年前

    需要删除存储库并重新下载所有内容)。如果你删除了你的回购,如果你的工件不是来自在线回购。

    根据你的编辑,你需要一个不同的设置.xml为了马文。这样做:

    mvn --settings ~/.m2/settings-demo.xml clean install

    将使用备用设置文件。对于Intellij,可以指定设置.xmlmaven设置中的文件(选中“Override”并将新路径放入):

    intellij maven settings

    File -> Invalidate Caches / Restart

    intellij caches

        2
  •  0
  •   Binyamin Regev    6 年前

    我不认为这是一个springboot问题,听起来更像是Maven问题,因为springboot @SpringBootApplication 注释正在工作。从你的描述来看 pom.xml ,听起来你给Maven带来了一些冲突。

    1. 如果这不起作用,请删除 .m2/repository 文件夹并重新导入依赖项。
    2. pom.xml文件 你没有springbootstarter的版本,这意味着Maven使用最接近根的版本,如果它的springboot版本低于2.0,那么@SpringBootApplication就不受支持。另外,尝试在您的