Message from discussion
Debugging Lift apps with ensime, jdb, jetty, sbt
Received: by 10.150.254.18 with SMTP id b18mr2564941ybi.9.1300743844853;
Mon, 21 Mar 2011 14:44:04 -0700 (PDT)
X-BeenThere: liftweb@googlegroups.com
Received: by 10.150.71.26 with SMTP id t26ls1883558yba.1.p; Mon, 21 Mar 2011
14:44:00 -0700 (PDT)
Received: by 10.151.5.11 with SMTP id h11mr2535676ybi.40.1300743840192;
Mon, 21 Mar 2011 14:44:00 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.142.43.7 with SMTP id q7mr286954wfq.8.1300743243624; Mon, 21
Mar 2011 14:34:03 -0700 (PDT)
Received: by a21g2000prj.googlegroups.com with HTTP; Mon, 21 Mar 2011 14:34:03
-0700 (PDT)
Date: Mon, 21 Mar 2011 14:34:03 -0700 (PDT)
X-IP: 24.16.253.87
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_8; en-us)
AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27,gzip(gfe)
Message-ID: <b61aa6a4-7016-44aa-9870-e4fd638779ab@a21g2000prj.googlegroups.com>
Subject: Debugging Lift apps with ensime, jdb, jetty, sbt
From: Sahale <jonathanbwe...@gmail.com>
To: Lift <liftweb@googlegroups.com>
Content-Type: text/plain; charset=ISO-8859-1
I am migrating from IntelliJ to Ensime, and have been very happy to
date to be back in emacs land with a powerful and very responsive text
editor, now endowed with modern ide-like smarts around scala.
However, after going through the ensime docs, and spending a while
fruitlessly searching this group and googling the web, I am puzzled as
to how to configure things to debug my lift jetty-based app. I have
tried modifying my sbt launcher so that it is waiting for a remote
socket attach, e.g.:
java -Dsbt.boot.properties="sbt.boot.properties" -Xdebug -
Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
-XXCMSClassUnloadingEnabled -XX:MaxPerm Size=256m -Xmx1024m -Xss4m -
jar `dirname $0`/sbt-launch.jar "$@"
...and then passing -attach localhost:5005 to ensime's jdb VM
parameters, but ensime's debugger code still wants to run a new VM for
the jdb session. Are others just launching jetty inside of the ensime
jdb process rather than attaching to one spawned by sbt? Is it a bad
assumption to think the ensime debugger configuration allows attaching
to a remote java process? What do people's workflow look like for
debugging with ensime and lift?
Thanks in advance,