2009-09-01 32 views
2

在开发自己的Java类以在ColdFusion 8中使用时,我偶然发现ColdFusion无法识别* .java或* .class已更改的问题,至少我没有看到我做的更改显示在页面上。这是一种缓存问题吗?在ColdFusion中缓存的Java类

回答

4

您可以尝试使用时,JavaLoader从RIAForge。它允许指定要加载的JAR或.class文件。它甚至不需要在类路径中,所以如果你喜欢,你可以将JAR存储在你的CFML中。我很确定它没有受到缓存的影响。

http://javaloader.riaforge.org/

+2

伟大的图书馆。但旧版本的行为与CF相同。即直到你弹出CF服务器或使用javaLoader才能检测到新的jar,创建一个新的实例。然而,新版本(1.0 alpha)可能是一个选项。它支持“动态编译”。但一定要看到http://www.compoundtheory.com/?action=displayPost&ID=212。 – Leigh 2009-09-01 20:29:38

+0

是的,我想这个想法是用类加载器创建一个新实例是你必须做的。我不认为有什么办法可以与WIHOUT创建一个新的实例。或覆盖现有的实例。也许如果你迷上了一些Groovy .... – ryber 2009-09-02 21:23:41

2

确保 “HotDeploy” 不关闭... :)

+1

是其必须给予明确,以将其关闭JVM参数? – noobsaibot 2009-09-01 09:42:34

+0

请注意,这是开发或测试实例的一个好主意,但您可能不希望将其用于生产站点。 – Jay 2009-09-01 12:40:54

+0

这应该是在开发环境中。然而,我如何让我的生产环境注意到课堂上的变化? – noobsaibot 2009-09-01 13:35:54