【问题标题】:Spring ApplicationContext cannot be resolved even with jar即使使用 jar 也无法解析 Spring ApplicationContext
【发布时间】:2026-01-24 18:50:01
【问题描述】:

我已将所有 spring 发行版 3.1.1 jar 添加到包含 org.springframework.context-sources-3.1.1.RELEASE.jar 的构建路径中 org.springframework.beans-sources-3.1.1.RELEASE.jar。

但是 Eclipse 构建错误仍然显示, “无法解析导入的 org.springframework.context.ApplicationContext”。

在 spring 发行版 3.1.1 中添加所有 jar 之前,我已经手动一一添加了 jar,其中包括 spring-context-3.0.2.RELEASE.jar 和 spring-beans-3.0.2.RELEASE.jar。当时ApplicationContext识别成功。但是后来我认为一个一个添加 jar 是浪费时间,为什么不下载最新的 spring 发行版中的所有 jar 并将其提供给构建路径。

最初我认为这可能与 build forder 中的已编译类冲突,因为我使用不同版本的 context-sources jar 构建项目。所以我删除了构建文件夹并清理了项目。当我添加 spring 3.1.1 jars 时,问题仍然存在。

【问题讨论】:

  • “但后来我觉得一个一个添加罐子是浪费时间”你一定是一个非常忙碌的人!我的建议是,改用“正确”的方式。
  • 我所做的实际上是正确的。下载 spring 发行版并添加 jars 来构建路径
  • 我已经解决了这个问题。问题是我添加了构建路径的源 jar 而不是 .class jar。需要在spring分发的dist文件夹内添加jar。
  • @FrankD - 哈哈,我以前做过。很高兴你想出来了。您应该将其发布为答案,然后关闭问题。

标签: java spring


【解决方案1】:

您必须添加它们中的每一个,而不仅仅是目录。您可以使用 Ctrl 键单击/鼠标拖动来多选所有 jar。

【讨论】:

    【解决方案2】:

    包括库:org.springframework.context.support-3.1.0.RELEASE.jar 和 org.springframework.context-3.1.0.RELEASE.jar

    【讨论】:

      【解决方案3】:

      它不是 Spring-bean jar。你需要 Spring-context jar。将所有罐子加在一起时,您可能会错过它。祝你好运。

      【讨论】:

        【解决方案4】:

        spring jars 应该从“dist”文件夹而不是“src”文件夹导入。 这将解决上述问题。

        【讨论】:

          【解决方案5】:

          从下载 org.springframework.context-2.5.6.a.jar.zip http://www.java2s.com/Code/Jar/o/Downloadorgspringframeworkcontext256ajar.htm 并从构建路径中导入它。将解决您的问题。

          【讨论】:

            【解决方案6】:

            我知道这个答案在很多其他线程中都给出了,但仍然是对我有用的解决方案。希望它可以帮助某人。

            第 1 步:关闭 Eclipse

            第 2 步: 只需转到您的 Maven 文件夹:-

            C:\Users\Rohit.rokade.m2\repository\org

            并删除“springframework”文件夹。 (这里包含所有与spring相关的maven依赖)

            现在打开 eclipse。

            第 3 步:Eclipse 将重新下载所有依赖项,此时错误应该已经消失。如果其中一些仍然没有,只需更新您的 Maven 项目。 (在eclipse中右键你的项目 -> Maven -> 更新项目)

            【讨论】:

              【解决方案7】:

              这解决了我的问题:

              1. 打开 pom.xml
              2. 点击底部的“依赖项”选项卡,然后点击添加。
              3. 在 artifactId - 输入“org.springframework”
              4. 在 groupId 中 - 输入“spring-core”
              5. 在搜索选项卡中 - 键入“springframework”并等待几秒钟。
              6. 寻找 spring-context 并添加它。

              现在,在项目资源管理器中,右键单击项目并搜索 Maven。 点击“更新项目。

              这应该可以解决问题。

              【讨论】:

                【解决方案8】:

                你必须包含这个依赖。

                <dependency>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring-context</artifactId>
                    <version>5.2.12.RELEASE</version>
                </dependency>
                

                【讨论】:

                  【解决方案9】:

                  如果您更喜欢通过项目结构手动添加任何 spring 依赖项,这适用于 MacOS 10.15.7 + IntelliJ IDEA。否则使用 maven 或其他 repos 肯定会省去麻烦。到写这个答案的时候,spring 5 已经发布了。

                  1. 同时按下快捷键command + ; 重定向到项目结构,然后单击库。在 library 部分,按加号,它会提示你找到你应该找到 spring jar 包的目录。

                  2. 从我们上一步开始,如果您之前在同一台机器上使用过 Spring,那么您很可能已经在您的机器上安装了 Spring 框架。 转到查找器>shift+command+h 进入主目录>shift+command+. 显示隐藏文件。找到 .m2 文件,进入 .m2>repository>org>spring-framework,直接点击文件夹直到看到spring-context-versionnumber.jar。选择它并应用它,现在spring-conntext.jar 文件将成功添加到您的工作环境中。

                  3. 如果第 2 步不是你的情况,请从这里下载 spring jar https://repo.spring.io/ui/native/release/org/springframework/spring/ 选择你想要的以....RELEASE-dist.zip结尾的版本,然后解压并在你存储下载的Spring发布包的文件中按照步骤2相同的方式找到jar文件。

                  【讨论】: