Java 无法解析类型org.springframework.context.ConfigurableApplicationContext。它是从必需的.class文件间接引用的

Java 无法解析类型org.springframework.context.ConfigurableApplicationContext。它是从必需的.class文件间接引用的,java,spring,maven,spring-boot,pom.xml,Java,Spring,Maven,Spring Boot,Pom.xml,我正在按照上的教程使用spring boot构建spring应用程序 我可以让程序在一台计算机上完美运行。 当我在另一台计算机上尝试时,我得到以下错误 无法解析类型org.springframework.context.ConfigurableApplicationContext。它是从必需的.class文件间接引用的 我尝试过删除和添加我的JRE系统库(JDK1.8),以及使用maven清理和更新项目,甚至删除和重新导入整个项目。所有这些方法都没有成功 我的pom文件是 <project

我正在按照上的教程使用spring boot构建spring应用程序

我可以让程序在一台计算机上完美运行。 当我在另一台计算机上尝试时,我得到以下错误

无法解析类型org.springframework.context.ConfigurableApplicationContext。它是从必需的.class文件间接引用的

我尝试过删除和添加我的JRE系统库(JDK1.8),以及使用maven清理和更新项目,甚至删除和重新导入整个项目。所有这些方法都没有成功

我的pom文件是

<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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>

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

  <groupId>test.api</groupId>
  <artifactId>api.test</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>api.test Maven Webapp</name>
  <url>http://maven.apache.org</url>

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

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

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

</project>

任何帮助都将不胜感激。谢谢。

第二台机器上的Maven缓存已损坏。JAR无法打开,这就是为什么会出现此异常

您可以通过在该项目的第二台计算机上运行此命令来修复此问题:

mvn dependency:purge-local-repository

如果不起作用,请尝试删除该计算机上的本地回购(
~/.m2/repository/org/springframework
),然后再次运行
mvn包。

我也遇到了同样的问题。我在删除本地计算机上Maven(.m2)的本地存储库目录时解决了此问题。它为我解决了问题。

我以前也遇到过同样的问题。可能发生了某些依赖项损坏。您可以清除并重新解析依赖项。 为此:

  • 转到存在pom.xml的项目位置
  • 在此处打开命令提示符,然后输入以下命令:

    mvn依赖项:清除本地存储库-dresolve=true


  • 我也有同样的问题,我按照以下步骤来解决:

    1.关闭日食

    2.删除存储库文件夹中的所有文件
    .m2/repository


    3.重新打开Eclipse并更新您的Maven项目

    发生此冲突,因为您的某些依赖项已损坏。请遵循以下步骤:->
    要删除此冲突,只需进入.m2文件夹打开存储库并删除该文件夹中的所有文件。现在打开你的项目,在调试中进行maven清理,在清理和所有下载之后,只需更新你的maven项目。您的冲突将得到解决。

    我也有同样的问题,我通过删除.m2/repository/org文件夹解决了问题,后来maven更新了表单STS

  • 找出项目使用的spring上下文的版本:
  • (在Eclipse:ProjectExplorer->[您的项目]->Maven依赖项中)

    列出项目的所有依赖项

  • 从maven存储库
    .m2/repository
    中删除文件夹
    org/springframework/springcontext/5.0.9.RELEASE
    。假设
    5.0.9.RELEASE
    是spring上下文发布版本

  • 我也面临着同样的问题,为了解决这个问题,我下载了jar并将其添加为外部jar。 这里是下载链接:

    添加以下依赖项
    org.springframework
    spring上下文
    4.3.7.1发布
    
    这可能是因为某些依赖项没有正确解析。 您可以尝试将“SpringBootStarterParent”的版本更改/降级为本地的其他工作项目。
    例如,通过将“2.3.0.RELEASE”(该版本适用于其他项目)中的“spring boot starter父级”设置为“1.5.9.RELEASE”,我的错误消失了。

    在第二台不工作的机器上,在本地m2 repo中验证maven依赖项是否正常,意思是JAR存在且未损坏JAR存在但我如何验证它们是否已损坏,如果已损坏,我如何修复它们?使用7zip或类似工具打开它们,检查类是否已损坏尝试此操作。@RITZXAVI我尝试了该链接,但未修复问题@再次检查最低点我不确定罐子是否存在。在.m2中,我有
    ...m2\repository\org\springframework\spring context
    而不是
    ...m2\repository\org\springframework\context
    我想我隐藏了一个更大的问题。现在,当我尝试运行代码时,无法实例化SLF4J LoggerFactory。感谢您的帮助,但最好是一个可重复的解决方案。应该有一种方法来确保pom中列出的环境和依赖项产生相同的行为。
    mvn dependency:purge-local-repository
    
    mvn dependency:tree
    
    Add bellow dependancy
    
    
    <!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>4.3.7.RELEASE</version>
    </dependency>