无法解析spring webmvc项目中的符号@配置
我正在Intellij中创建一个Spring MVC项目,当我创建无法解析spring webmvc项目中的符号@配置,spring,spring-mvc,intellij-idea,Spring,Spring Mvc,Intellij Idea,我正在Intellij中创建一个Spring MVC项目,当我创建WebConfig类时,@Configuration注释未被Intellij识别,并给出“无法解析符号”错误。尽管我使用了“import org.springframework.context.annotation.Configuration”,但它也无法识别“springframework”。有人能帮我吗 这是我的pom.xml <?xml version="1.0" encoding="UTF-8"?> <
WebConfig
类时,@Configuration
注释未被Intellij识别,并给出“无法解析符号”错误。尽管我使用了“import org.springframework.context.annotation.Configuration”,但它也无法识别“springframework”。有人能帮我吗
这是我的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>academy.learnprogramming</groupId>
<artifactId>Todo-list</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<properties>
<logback.version>1.2.3</logback.version>
<spring.version>5.0.5.RELEASE</spring.version>
<java.version>8</java.version>
<annotation-api.version>1.3.2</annotation-api.version>
<servlet-api.version>3.1.0</servlet-api.version>
<!-- <lombok.version>1.18.12</lombok.version>-->
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>${logback.version}</version>
</dependency>
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
<version>${annotation-api.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>edge</version>
<scope>system</scope>
<systemPath>${basedir}/libs/lombok-1.18.12.jar</systemPath>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>${servlet-api.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<target>${java.version}</target>
<source>${java.version}</source>
<release>${java.version}</release>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.cargo</groupId>
<artifactId>cargo-maven2-plugin</artifactId>
<version>1.6.7</version>
<configuration>
<container>
<containerId>tomcat9x</containerId>
<type>embedded</type>
</container>
<configuration>
<properties>
<cargo.servlet.port>8081</cargo.servlet.port>
</properties>
</configuration>
</configuration>
</plugin>
</plugins>
</build>
</project>
4.0.0
academy.learnprogramming
待办事项清单
1.0-快照
战争
1.2.3
5.0.5.1发布
8.
1.3.2
3.1.0
回写
回归经典
${logback.version}
javax.annotation
javax.annotation-api
${annotation api.version}
org.springframework
SpringWebMVC
${spring.version}
org.springframework
spring上下文
${spring.version}
org.projectlombok
龙目
边缘
系统
${basedir}/libs/lombok-1.18.12.jar
javax.servlet
javax.servlet-api
${servlet api.version}
假如
org.apache.maven.plugins
maven编译器插件
3.7.0
${java.version}
${java.version}
${java.version}
org.apache.maven.plugins
maven战争插件
3.2.0
假的
org.codehaus.cargo
cargo-maven2-plugin
1.6.7
tomcat9x
嵌入的
8081
@Configuration
属于模块spring context-${spring.version}
。确保它出现在依赖项中。由于Maven依赖可以传递,请考虑使用:
mvn dependency:tree
查看哪个依赖项带来了所需的jar
完成后,将maven项目重新导入intelliJ,以便IDE将更新其内部索引您的
pom.xml
中显然没有所需的依赖项。向我们展示pom.xmlI已在pom.xmlI中添加了这些依赖项。我已添加了此依赖项,但仍无法识别@Configuration注释Intellij。org.springframework spring context 5.0.5.RELEASE从命令行运行mvn clean test以定位问题-如果有效-Intellij不同步,如果失败-您的pommvn clean test中有一个问题失败,称为“致命错误编译”。pom中会出现什么问题?请提出建议。确保您理解依赖项和依赖项管理部分之间的区别。我相信你不应该在这里使用依赖管理。谢谢马克。我删除了依赖项管理标签,它对我有效。