在GAE中“检测”和加载“插件”

时间:2010-04-24 15:29:20

标签: java spring google-app-engine plugins

我有一个“类似插件”的架构,我想创建一个实现专用接口的类的实例,并将它们放在缓存中。 (具有单身效应)。

插件将作为jar提供,并在上传应用程序之前放入app引擎war文件中。

我试图使用ClassPathScanningCandidateComponentProvider,因为我仍然使用spring,但这不起作用。提供者抱怨说在扫描类路径时无法找到HttpServletResponse类文件。我无法解决这个问题,当我添加servlet jar时,我当然会遇到问题,因为GAE也提供了相同的jar。如果我不这样做,我就会收到上面的错误......

所以我尝试添加静态初始化代码,但当然这不起作用,因为该类在第一次实例化时被初始化。 (我知道,但值得一试)

我目前看到的最后一次机会是在创建包时创建包含所有插件类的属性文件,但这需要编写maven插件等等,我想避免这种情况。

我有什么遗失的东西吗?

1 个答案:

答案 0 :(得分:1)

好的,我想我会尝试编写自己的类加载器。这样,我甚至可以将插件放在数据存储区中,我可以检测所有必要的类等。

: - )