我刚从Netbeans转到Eclipse . 在Netbeans中,我可以开箱即用地调试Playframework应用程序 . 但是,在Eclipse中,为了调试Web应用程序(特定的Playframework应用程序),似乎很难配置它 .
就像玩!文档,
主启动器只能与Run As eclipse命令一起使用 . 然后,您可以使用“调试为”连接“连接JPDA启动程序”以随时启动调试会话 . 停止调试会话不会停止服务器 .
但是,我无法在"Debug As"中看到“连接JPDA启动器”(我'm using Eclipse Classic 3.7.0). I'搜索了关于JPDA(我知道"main launcher"和JPDA,然后在_3003837中配置远程调试作为指示)但它返回错误:
无法连接到远程VM . 拒绝连接 . 连接被拒绝:连接
我搜索过并找到了一些建议:
1.)编辑catalina.bat并添加以下行:set JPDA_TRANSPORT = dt_socket ... set JPDA_ADDRESS = 8000 AND 2.)编辑startup.bat调用“%EXECUTABLE%”jpda start%CMD_LINE_ARGS%
实际上我并不清楚这一点,我想这是配置Tomcat . 但是,我正在使用Play!默认服务器,检查application.conf并确保它正在侦听JPDA的端口9000和8000 .
当然,我在调试之前启动了Play应用程序,我可以正常通过端口9000访问应用程序 . 我使用的是没有管理员权限的Win 7 .
你有关于调试Play的详细指南吗?在Eclipse中?
7 回答
首先,您使用
play eclipsify YourProject
命令为Eclipse创建了配置文件,对吧? (如果没有,请参阅Play framework documentation以获取更多信息 . )之后,您的项目中应该有一个名为
eclipse
的文件夹 . 在其中,您应该看到命令Connect JDPA to YourProject.launch
,YourProject.launch
和Test YourProject.launch
.右键单击
YourProject.launch
并从弹出菜单中选择Run As --> YourProject
. 这将启动您的申请 . 应用程序运行时,右键单击Connect JDPA to YourProject.launch
,然后从弹出菜单中选择Debug As --> Connect JDPA to YourProject.launch
. 这将在您的应用程序上启动调试会话 .从Play 2.0开始,运行
play eclipsify
时不再生成eclipse
文件夹和启动器 . 运行play eclipsify
后,您可以在Eclipse中调试项目,如下所示:在eclipse之外的控制台中,运行
play debug run
.在Eclipse中,右键单击您的项目,然后选择
Debug As -> Debug Configurations...
右键单击
Remote Java Application
,然后单击New
.主机应已设置为
localhost
. 将端口设置为9999
(play debug run
命令使用的默认端口) .单击
Apply
进行保存,然后单击Debug
以连接到正在运行的Play实例 .Play 2.1-RC2 : 跑步玩!与Eclipse同步的应用程序
为了使项目Eclipse兼容,得到项目文件夹,然后命令“>播放eclipse” . 现在您可以将其添加为eclipse的现有项目形式 .
然后要运行它,你必须先在项目文件夹中运行start play,即命令“play”
这将激活播放服务器并识别项目中的应用程序,即[appname] $现在您只需要命令“运行”以查看您的应用程序在localhost:9000或您指定的任何端口配置上运行 .
Debug mode: 为了类似地运行你需要首先给出命令"play"然后[appname] $ "play debug run"这将默认使用端口9999所以当你在浏览器和eclipse文件中转到localhost:9000时 - > Debug As - > Debug configuration .. - >新的远程Java应用程序 - > connect指定端口9999和debug
使用激活器,你需要
activator -jvm-debug <port number> ~run
我想大多数人都在使用Typesafe Activator运行游戏框架 . 如果您这样做,这可能对您有所帮助,
喜欢:activator -jvm-debug 9999 ~运行
(然后它会在9999端口启动调试器,同时应用程序在9000端口运行 . )
从Play 2.1.2开始,我在运行play debug run时收到了“正在使用的地址”错误 .
解决方法是在play-2.1.2目录中编辑play.bat并更改以下两行:
至
然后在Eclipse中,选择Debug Configurations,找到“Remote Java Application”,执行New . 然后将端口设置为8551.现在您可以开始使用
然后在Eclipse使用您创建的调试配置开始调试 .
如果在项目文件夹上运行“play eclipsify”,它将创建两个运行配置 . 查看运行配置详细信息,您应该检查“VM参数”中是否包含以下行(或类似内容):
您可以在此处配置调试端口 . 使用此配置,我可以使用您拥有的指令附加到进程 .