gwan没有重新编译java文件

时间:2013-03-06 00:40:29

标签: java g-wan dynamic-class-loaders

我针对在Ubuntu 12.04服务器上运行的gwan服务器附带的标准hello.java和hello.c进行了测试。 G-WAN 4.3.1 64位(2013年3月1日17:36:39)

一旦我用

运行gwan

sudo ./gwan -d

我还注意到在没有守护进程选项的情况下运行相同的行为。

然后浏览到192.168.0.2:8080/?hello.c 我得到“Hello,ANSI C!”的预期输出。我更改了hello.c中的文本并刷新浏览器并获得预期的更改。

如果我对hello.java文件执行相同的操作,则在重新启动gwan之前不会显示对文本的更改。

有没有人知道我是否遗漏了一些简单的设置会在文件更改时导致重新编译?我正在使用OpenJdk 7.(刚刚安装在ubuntu 12.04的全新安装上)我甚至尝试将其称为192.168.0.2:8080/?hello.java&n=1以消除缓存可能性,然后另一个浏览器然后另一台机器在不同的网络上。同样的事情,在重新启动服务器之前,似乎没有发生这些变化。 (对于java,它适用于.c文件)

由于 -Steve

1 个答案:

答案 0 :(得分:2)

你是对的。这是一个长期未解决的问题,因为我们没有找到如何编写和使用“JNI自定义类加载器”,这是一种动态卸载和重新加载Java类的方法。

当我们寻求帮助时,一些Java用户将我们重定向到支持此功能的大型(数百MB)Java包,但由于这仅仅是几行JNI ANSI C代码的问题,我们希望实现它在C G-WAN程序本身(我们只缺乏JVM知识)。

非常感谢Java社区提供的任何帮助(贡献者将获得信用到期的信用)。我们仍然缺少这个Java功能。