我正在为Geoserver
开发一个数据存储插件,为了更快地开发它,我正在尝试对其进行远程调试。 Geoserver
在窗帘后面使用Tomcat
。我准备了通过Eclipse
进行远程调试的所有内容,并完成了它。现在,我可以远程调试插件了。但是,当我修改代码(尝试添加无害的行,例如:int noHarm = 5;
)然后将其导出为jar并将该jar复制到webapps\lib\
安装目录下的Geoserver
时,我无法远程调试插件。之后,我将该修改更改回工作的状态(删除了int noHarm = 5;
)并再次创建了jar,然后将其复制到了webapps\lib\
下,现在我可以再次进行远程调试了。
当我在Geoserver
中打开商店页面时,它停止在canProcess()
方法中的断点处,并且该jar从未修改的代码中导出,或者当我尝试添加新的商店时,它停止在createDataStore()
方法中的断点处,并且该罐中已经将其导出了来自未修改的代码。但是,即使我更改了一条细线或添加它,即使它成功连接到虚拟主机也不会在断点处停止(如果有帮助,我可以在Windows 7-32位上使用vmware workstation
)。
可能是什么问题呢?
首先十分感谢。
最佳答案
我找到了解决方案,大约是eclipse
。我的源文件不在工作区中,因此在我使用build path --> under the source tab
按钮的项目Link Source
中。该按钮允许您将Java文件(不在工作空间中)链接到项目,并让这些文件充当源文件。我为解决此问题所做的工作:
然后,我将这些文件移到项目的真实源文件夹下
这样,我创建了jar。
我停止了Geoserver(Tomcat)并将我的jar复制到webapps \ lib \下
我启动了Geoserver(Tomcat)并通过Eclipse远程调试连接到服务器。
完成这些步骤后,我可以对部署的每个jar进行远程调试。