intellij和嵌入式Jetty-创建名称为bean的错误

问题描述 投票:0回答:1

TLDR

在独立Jetty服务器中在IntelliJ中运行嵌入式Jetty时,但在Intellij之外运行相同代码时,不会出现Error creating bean with name...错误。

深度

我们有一个在Jetty中运行的Web应用程序。

直到一周前,我才能够通过Intellij的嵌入式Jetty启动和使用该应用程序。

几天前,我的一位同事更新了其中一个bean构造函数,并在其中添加了他创建的新bean。

因此,在zoowebappcontext.xml中,他向bean构造函数添加了一个新条目:

 <bean id="animalsService" class="java.util.ArrayList">
    <constructor-arg>
        <list>
            <ref bean="pets.catService" />
            ....
            <ref bean="pets.dogService" />  <-- The new item
            ...

并且在applicationContext.xml文件中,他添加了一个新的bean定义,看起来与那里的所有其他bean非常相似:

    <bean id="pets.dogService"
      class="com.example.DogServiceImpl"
      parent="...">
    <property name="..." ref="..."/>
</bean>

这很奇怪:如果我mvn clean install该项目,有一个新的zoo.war,将其移动到Jetty的webapp文件夹,然后以stand-alone Jetty的身份启动该应用程序,则该应用程序将启动没有错误。

但是,当在intellij的内部运行该应用程序时嵌入式Jetty,该应用程序尝试启动并最终因以下错误而失败:

将代码移至上述更改之前的提交位置,intellij可以毫无问题地启动。

spring intellij-idea jetty javabeans embedded-jetty
1个回答
0
投票
似乎intelliJ某些东西滞留在系统中,就像问题刚开始一样,它只是在某个时候消失了。

一些可能有助于“重置” IntelliJ的东西(它们都没有通过自己解决问题):

    多次重新启动IntelliJ
  • 重置计算机
  • 在不同的GIT分支之间来回切换
  • 文件->使缓存无效/重新启动...
  • 同样,所有项目本身都无法解决。
  • © www.soinside.com 2019 - 2024. All rights reserved.