清洁和构建后,旧服务提供商仍然存在

时间:2012-08-06 20:30:44

标签: java lookup openide

我正在使用org.openide.util.Lookup作为应用程序中的独立库(而不是NetBeans平台应用程序)。

无论我到哪里,它都说你可以通过执行Clean和Build来清除使用@ServiceProvider注释的旧类中的META-INF / services条目,但无论我清理/清理和构建/重启多少次NetBeans /重新启动计算机它仍记得旧注释。我甚至查看了大量的配置文件,看它是否在某处缓存了引用。

我找到的唯一方法是创建一个新项目,并在向其添加@ServiceProvider注释后永远不删除或重构任何类。这非常令人沮丧。

有没有人知道从生成的META-INF / services文件中获取这些旧类引用的灵丹妙药?

1 个答案:

答案 0 :(得分:0)

我不完全确定这是发生在你身上的事情,但我有一个类似的问题,删除的菜单项仍然出现在layer.xml中。我发现解决方案是做一个干净的构建,关闭Netbeans(假设这是你正在使用的IDE),然后转到C:\ Users \ my Username \ AppData \ Local \ NetBeans \或其等价物,并删除Cache文件夹。如果你碰到它,请告诉我这是否有效。