如何在IntelliJ Idea中进行playframework的调试

ses*_*ses 25 debugging playframework

在这里,我们有一个链接

http://www.playframework.org/documentation/1.0.1/ide

关于如何配置playframework以使用不同的IDE.他们在那里说了几句关于调试的话,但目前尚不清楚 - 我该如何进行调试?如果我提出一个断点,让我们说我的模型的构造函数类,然后我应该如何以及我应该启动什么来初始化调试?我使用IntelliJ Idea.

例如,当我使用Jboss或Tomcat时,这些服务器中的IDE中有一个选项可以在调试模式或"正常"模式下运行它们.但是如何在这种情况下使用Play Framework?我应该以某种方式配置远程调试吗?

was*_*tim 41

在intellij IDEA中运行/调试应用程序最方便的方法如下.

菜单命令:运行 - >编辑配置!

编辑配置

添加新配置 - >应用程序

然后填写字段:

主要课程:

play.server.Server

VM参数:

-Dapplication.path =.

你应该有类似的东西:

配置屏幕

如果您正确执行了该操作,则可以直接从IDE运行和停止应用程序

编辑播放!2

Play 2具有良好的调试文档.所以去看吧.但是如果你想调查运行/调试按钮方法 - 请进一步阅读.

Play 2有所不同.

设置:

主要课程:

play.core.server.NettyServerplay.core.server.ProdServerStart

VM参数:

-Xrunjdwp:transport = dt_socket,server = y,suspend = n,address = 9999 -Dapplication.path =.

你仍然可以通过按下调试按钮调试你的应用程序,但我还没有发现一些问题:

  • 它始终以PROD模式启动,因此您无法进行热代码更改.

  • RUNNING_PID.重新启动调试会话时出现错误,说您必须删除此文件.

  • 让我们添加一个非常重要的东西,`-Dplay.id = yop`来指定播放框架ID. (2认同)

Bil*_*ill 17

在Play 2中,只需执行以下操作:

  • 从shell中运行 play debug
  • 您将被放入调试控制台.键入run并回车.
  • 然后在为"localhost"和9999设置的IntelliJ IDEA中创建远程配置.
  • 启动新配置


Nim*_*007 14

如果是一个play项目,请从命令行:

play debug
Run Code Online (Sandbox Code Playgroud)

如果它是命令行中的SBT播放项目:

 sbt -jvm-debug 9999 run
Run Code Online (Sandbox Code Playgroud)

默认情况下,debug port为9999

现在创建一个远程配置

在IntelliJ中:

转到"编辑运行配置"

在此输入图像描述

创建一个新的远程配置(端口9999,所有其他详细信息保留默认值)

在此输入图像描述

运行新的调试配置(不要忘记放置一个断点)


Per*_*ega 10

当您启动Play Framework(通过播放运行)时,您会看到调试端口正在某个地址运行.这是服务器上的标准Java行为(启用了调试端口).

大多数IDE允许您设置与该远程端口的连接,以便您可以远程调试代码.具体步骤取决于您使用的IDE,但它应该如此简单.


mar*_*kus 8

我不得不在build.sbt中改变这一行:

fork in run:= true

fork in run:= false

使用Play 2 App运行配置在IntelliJ IDEA 15.0中使用断点.


小智 7

我遇到了类似的问题.

play(在2011-08-28从github克隆)和intellij 10.5

严重:无法读取application.conf

我的修复是:-Dapplication.path =.(没有"")

在我的盒子上不再需要设置-Djavaagent = ...


小智 5

自IDEA第11版以来,终极版本中对Play框架提供原生支持.要调试Play应用程序,请执行以下操作:

  • 从命令行,使用'play new demoapp'创建一个新的演示应用程序
  • 从命令行,使用'play idea demoapp'创建Intellij项目/模块文件
  • 如果您使用最新的JDK(错误!),可以选择编辑.iml文件并将'1.6'更改为'1.7'
  • 启动Intellij,打开demoapp项目
  • 转到运行/编辑配置
  • 按"+"按钮,然后添加"远程"配置
  • 选择Transport:socket,Debugger mode:Attach,Host:localhost,Port 8000
  • 设置'name'和'classpath-module'
  • 开始游戏!通过选择工具/ Play框架在IDEA中支持框架
  • 在Play中键入"play run play101"启动演示应用程序!安慰
  • 在'render()'行的Application.java文件中设置断点
  • 启动"远程"调试配置.
  • 在浏览器中,转到http:// localhost:9000

你现在应该打破断点.