用IDEA调试Play工程
IDEA的版本是14.0.1,运行在MAC OS X Yosemite上。
IDEA已经装了Scala插件,但是在新建工程中,Scala的选项中并没有Play框架,不知道什么原因。
导入Play工程
我想导入从Github上下载的一个play工程。
当直接用IDEA的import project导入build.sbt时,虽然可以正常导入,但是IDEA并不能识别play的目录结构。
所以,首先安装activator, 然后在当前工程目录下运行activator, 进入activator的shell之后,输入idea,执行。这时候Activator会生成一个IDEA工程,导入就可以了。
设置调试环境
首先需要让activator在run 这个play工程时,可以接受远程调试。
set "JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=<port>"
在Linux和mac下,export "JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=<port>"
这里把port设成想要的端口。这次设成9999
然后在IDEA最上边的run目录下选择 edit configuration。进行以下设置
Transport : Socket
Debugger mode: Attach
Host: localhost
Port:9999
name:自己起一个。
进行调试
首先在项目里设置断点。
在terminal里执行前边提到的export "JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=<port>"
接着执行activator ~run。会显示
Listening for transport dt_socket at address: 9999
...........
[info] play - Listening for HTTP on /0:0:0:0:0:0:0:0%0:9000
然后在IDEA里启动调试,选择刚才建立的那个调试选项,开始调试
在IDEA的Console中会显示
Connected to the target VM, address: 'localhost:9999', transport: 'socket'
打开浏览器,访问localhost:9000, 就会在IDEA中看到程序在断点处停了下来。下面就可以调试了。
用IDEA调试Play工程的更多相关文章
- 痞子衡嵌入式:大话双核i.MXRT1170之在线联合调试双核工程的三种方法(IAR篇)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是i.MXRT1170下在线联合调试双核工程的方法(基于IAR). 前段时间痞子衡写过一篇<双核i.MXRT1170之单独在线调试从 ...
- vs调试dll工程
dll本身是没法运行的,必须在其它工程调用dll时候才会运行. 所以,调试dll首先要将调用dll的工程和dll工程联系起来. 解决方案中添加dll工程: 现在dll 和 应用程序两个工程就都在一个解 ...
- 用eclipse调试scala工程代码
1,在scala工程下面执行命令:sbt -jvm-debug 9999 2,然后执行命令:run,程序就跑起来了 3,然后用eclipse工具导入scala工程. 4,最后配置调试信息,端口号跟上面 ...
- VS2012调试C++工程DLL
1.C++工程属性对话框 2.配置属性: (1)常规:输出目录:..\Bin\WFCrawler(调用DLL的工程) 中间目录:..\Bin\WFCrawler(调用DLL的工程 ...
- AndroidStudio NDK开发、调试测试工程
## 验证内容:1.支持NDK调试 2.支持native方法快速创建jni封装(但是没有加入extern "C"声明,会导致native方法找不到jni,进而报错) 3.支持通过修 ...
- gdb调试caffe工程
环境:UBUNTU 16.04 CMake caffe 1.0.0-rc3 1.首先编译caffe为debug版本: 在caffe根目录下编辑CMakeFileList.txt,加入如下几行: SET ...
- Windows平台dump文件的产生,调试;工程配置pdb文件怎么生成
http://blog.csdn.net/byxdaz/article/details/25872151
- SpringBoot工程+热部署进行远程调试
本文转载自:https://blog.csdn.net/qq_31868349/article/details/78553901 SpringBoot工程+热部署进行远程调试 本地端添加配置 在pom ...
- BCB6 如何跨工程(Project)进行源码级调试
如何跨工程(Project)进行源码级调试 在日常工作中,如何跨工程(Project)进行源码级调试这是个无法回避的问题.例如:一个应用程序工程为“prj_A”,一个动态库工程为“prj_B”,“pr ...
随机推荐
- jQuery 笔记
1. 选择器 http://www.runoob.com/jquery/jquery-selectors.html 2. toggle() 用来切换 hide() 和 show() 方法 ht ...
- UIDynamic 基础认识
UIDynamic 是从iOS 7开始引入的一种新技术,属于UIKit框架,可以模拟现实生活中的物理现象,如:碰撞.抖动.摆动等 动力效果:有一个效果器,叫做“动力效果器”里面面可以添加“动力效果” ...
- WaitForSingleObject用法
对应函数 编辑 VC声明 DWORD WaitForSingleObject( HANDLE hHandle, DWORD dwMilliseconds ); 参数 编辑 hHandle[in]对 ...
- 一些常用sqlite语句
1,如果表不存在就新建一个 CComBSTR bstrCreatBat(L”CREATE TABLE IF NOT EXISTS tb_Name (\ rowIdIndex INTEGER PRIM ...
- ubuntu 阿里云安全配置
1. 添加新用户, 加入 root 组, 赋予 sudo 权限 2. 禁用 root 3.
- urllib2.urlopen超时
urllib2.urlopen设置超时,可以解决read方法阻塞的问题 urllib2.urlopen(‘xxx’,timeout=30)
- 基于TLS的反调试技术
TLS(Thread Local Storage 线程局部存储) 一个进程中的每个线程在访问同一个线程局部存储时,访问到的都是独立的绑定于该线程的数据块.在PEB(进程环境块)中TLS存储槽共64个( ...
- windows下tomcat切割日志按照日期输出
windows下tomcat默认不会把应用的日志信息输出在日志文件中的,只会在控制台打印. 解决方法: 1,下载工具cronolog-1.6.1-win32.zip,并解压. 2,把cronolog. ...
- mysql 之路目录
数据库介绍.常见分类 Mysql入门 Mysql安装配置 Mysql多实例安装配置 Mysql常用基本命令 Mysql数据库备份和恢复 Mysql日志 Mysql逻辑.物理备份和增量恢复 Mysql字 ...
- thinkphp 前后版本ajaxReturn方法的分别
之前用的是thinkphp2的版本现在改到thinkphp3.2已上的版本,发现ajaxReturn这个方法返回的数据不一样了,现在做下记录 thinkphp2的ajaxReturn的实现原码 pro ...