Jakarta ee Glassfish/Jersey在扫描REST资源时是否查找已删除的文件?

Jakarta ee Glassfish/Jersey在扫描REST资源时是否查找已删除的文件?,jakarta-ee,netbeans,glassfish,jersey,Jakarta Ee,Netbeans,Glassfish,Jersey,当我尝试部署REST服务时,NetBeans中出现了错误。日志显示,它在com.mypackage.io中找到了三个根资源类,这是不正确的,因为只有resource类实际存在 它最初是ResourceABC,但我将其重命名为Resource。类ResourceXYZ是一个已删除的类。所有这些类都映射到同一路径“/”,这就是我的REST服务无法加载的原因。那么,为什么Glassfish/Jersey选择了这些已经不存在的职业呢 INFO: Scanning for root resource an

当我尝试部署REST服务时,NetBeans中出现了错误。日志显示,它在
com.mypackage.io
中找到了三个根资源类,这是不正确的,因为只有
resource
类实际存在

它最初是
ResourceABC
,但我将其重命名为
Resource
。类
ResourceXYZ
是一个已删除的类。所有这些类都映射到同一路径
“/”
,这就是我的REST服务无法加载的原因。那么,为什么Glassfish/Jersey选择了这些已经不存在的职业呢

INFO: Scanning for root resource and provider classes in the packages:
  com.mypackage.io
INFO: Root resource classes found:
  class com.mypackage.io.Resource
  class com.mypackage.io.ResourceABC
  class com.mypackage.io.ResourceXYZ

将其添加到web.xml中

<web-app>
    <servlet>
        <servlet-name>Jersey Web Application</servlet-name>
        <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
        <init-param>
            <param-name>jersey.config.server.provider.packages</param-name>
            <param-value>org.foo.rest;org.bar.rest</param-value>
        </init-param>
        ...
    </servlet>
    ...
</web-app>

Jersey Web应用程序
org.glassfish.jersey.servlet.ServletContainer
jersey.config.server.provider.packages
org.foo.rest;org.bar.rest
...
...

我刚刚将
资源
重命名为
Bug
,并部署到Glassfish,这自然失败了。然后我将
Bug
重新命名为
Resource
,当我再次尝试部署时,它将
Bug
显示为找到的
根资源类之一,以及上面提到的其他三个资源类。这毫无意义,它是如何提取这些已删除/不再存在于此包中的类的?有时Glassfish在从Netbeans重新部署应用程序时会感到困惑,您是否尝试过先取消部署应用程序,然后重新部署?如果这甚至不起作用,请尝试删除Glassfish域文件夹下“生成”子文件夹中的文件。