我在VMWare服务器内部的带有sun/oracle JVM 1.6_23的Linux Red Hat上运行此代码。

一段时间后,JVM似乎无法访问我的匿名内部类。

我的类路径很好,因为它可以工作一段时间。

我得到的只是这样的错误:



第45行是下面的第一行,找不到我的新谓词

        DomaineVO domaineVO = Iterables.find(domainesVO, new Predicate<DomaineVO>() {

            @Override
            public boolean apply(DomaineVO input) {
                return input.getId().equals(domaine.getIdentifier().toString());
            }
        });

有任何想法吗 ?

最佳答案

最后,我认为我们可能已经把矛头指向了这个问题。

我们在 jetty 上运行此代码,并使用.war文件的自动部署。
默认情况下,jetty使用java.io.tmpdir部署.war文件。

我们的问题仅存在于linux上,并且大多是在清晨(第一位上类族使用该应用程序后)。

原因是在晚上清理了/tmp(由我们服务器上的LOGROTATE命令完成)。

经验法则:切勿长时间使用/tmp,并让 jetty 在您自己的目录中部署war。

谢谢大家

09-26 14:52