我正在试图弄清楚如何调试远程运行的jar。这是我的情景:
我的.jar将从VPS运行。这个jar基本上运行一个服务器 对于游戏,所以它也连接到一个mysql数据库。我用3个.bat文件启动服务器,看起来像这样:
设置CLASSPATH =。; dist \ aries.jar; dist \ mina-core.jar; dist \ slf4j-api.jar; dist \ slf4j-jdk14.jar; dist \ mysql-connector-java-bin.jar < / p>
java -Xmx500m -Dwzpath = wz \ -Djavax.net.ssl.keyStore = filename.keystore -Djavax.net.ssl.keyStorePassword = passwd -Djavax.net.ssl.trustStore = filename.keystore -Djavax.net。 ssl.trustStorePassword = passwd net.world.WorldServer
暂停
我想要做的是像正常一样在vps上启动服务器,但是通过Netbeans IDE在本地计算机上调试服务器。我不知道这是否可能,因为人们将连接到服务器(虽然,我将调试一个只有我在线的测试服务器)。
注意:在来到这里之前我做了很多搜索,我发现很多与使用xdebug&amp; php与我的情况没什么关系(我不认为)
-Thanks
答案 0 :(得分:4)
关于此问题NetBeans FAQ page。
简而言之:
将远程调试选项添加到Java命令中。例如:
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=8888,suspend=n
然后,使用NetBeans中的attach debugger选项并选择您上面使用的服务器和端口(8888)。它非常简单。
您可能需要考虑网络和防火墙注意事项,因为您可能已经注意到没有涉及密码,因此任何可以连接到端口的人都可以调试您的应用。这可能是一个很大的安全风险。您的VPS提供商可能有一些工具可以帮助您建立安全的专用连接。