我目前正在使用Glassfish开发基于Web的应用程序。因此,我必须实现功能,编译/打包它(使用maven),在glassfish服务器上部署.war文件,测试它并再次取消部署以开始新的循环。
我的问题是,Glassfish在Windows 7下不会取消部署我的.war文件。取消部署大约需要3分钟,并且不会删除/ glassfish / domains / myDomain / applications中的所有已部署文件。它会生成一个.glassfishStaleFiles。
要再次部署,我首先必须完全删除/ glassfish / domains / myDomain / applications的内容。 显然这需要太长时间,我需要在实施时多次这样做。
但是:使用Ubuntu时一切正常。干净,快速的取消部署和部署。
提前致谢
答案 0 :(得分:1)
这是GlassFish的一个已知问题,因为与Linux相比,Windows中处理文件句柄的方式。如果某个进程在Windows中打开了文件,则会阻止部署。 GlassFish中有很多这些边缘情况,其中许多(可能全部)已经在Payara Server中修复,它来自GlassFish。 Payara Server是免费的,所以I would recommend trying the latest version 4.1.2.174可以查看问题是否在那里得到解决。
以下是Payara Server中针对此类问题的一些修复示例: https://github.com/payara/Payara/pull/467