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

一旦我与

须藤./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文件配合使用)

谢谢
-史蒂夫

最佳答案

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

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

Java社区的任何帮助将不胜感激(在应得的积分中贡献者将获得积分)。我们仍然缺少此Java功能。

09-30 15:00
查看更多