【问题标题】:Spring 3 on GlassFish 2.1 java.lang.NoSuchFieldError: APPLICATION_CONTEXT_ID_PREFIXGlassFish 2.1 上的 Spring 3 java.lang.NoSuchFieldError: APPLICATION_CONTEXT_ID_PREFIX
【发布时间】:2010-12-29 15:04:06
【问题描述】:

我正在尝试在 GlassFish v2.1 上部署 Spring 3 应用程序并收到以下错误:

APPLICATION_CONTEXT_ID_PREFIX at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:431)

我在 spring 论坛 http://forum.springsource.org/showthread.php?t=79929 上找到了建议,它说类路径中可能存在另一个版本的 spring。我正在使用 maven-2 进行依赖管理,并且依赖图中没有其他版本的 spring。我也查了sun updatecenter,里面有安装spring framework 2.5.4的选项,没有安装。

我不知道这是否会影响它,但我还在应用服务器上部署了最新版本的 JBoss Guvnor 和 Hudson。

更新:我取消了所有其他应用程序的部署并重新启动。这没有解决。

任何提示、方向、建议将不胜感激!

【问题讨论】:

    标签: spring maven-2 glassfish classpath


    【解决方案1】:

    我安装了 glassfish v3,部署了应用程序并且它工作正常。但是,这个答案是次优的。如果有人知道如何在 glassfish v2.1 上查找或解决问题,请回答。

    【讨论】:

      【解决方案2】:

      首先想到的是你有一个传递依赖。这意味着你的 pom 文件中的一个依赖项加载了一个你想要的另一个版本的库。您可以使用 mvn dependency:tree 检查所有依赖项,包括传递的依赖项。 如果您找到一个,则在参与的依赖项中使用排除标记。 祝你好运!

      【讨论】:

        【解决方案3】:

        确保确保您没有在更新中心安装 Spring。我能够通过卸载它取得进展(使用版本 2.5.6)。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-08-09
          • 1970-01-01
          • 2015-04-23
          • 2023-04-08
          • 1970-01-01
          相关资源
          最近更新 更多