Rém*_*ghe 32 java eclipse debugging maven jboss-weld
我正在尝试在Eclipse中调试Maven测试.当我使用maven选项maven.surefire.debug启动测试时,我收到此错误:
ERROR: transport error 202: bind failed: Address already in use
FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197)
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)
JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [../../../src/share/back/debugInit.c:690]
/bin/sh: line 1: 27500 Abort trap
Run Code Online (Sandbox Code Playgroud)
当我尝试在我的shell中启动调试时,它是一样的.
我试图添加maven选项forkMode = never,如果没有maven.surefire.debug选项,我的焊接工件会出现另一个错误:
Error loading Weld bootstrap, check that Weld is on the classpath
Run Code Online (Sandbox Code Playgroud)
但是,Weld在我的课堂上.
有任何想法吗 ?
luc*_*ell 29
要终止侦听端口的进程:
此命令应列出在所有端口上侦听的进程:
netstat -ano
Run Code Online (Sandbox Code Playgroud)
该-o选项将显示进程ID.
如果您使用的是*nix系统,则可以进一步改进:
netstat -ano | grep <badport>
Run Code Online (Sandbox Code Playgroud)
当您拥有进程ID时,可以使用以下命令终止它:
视窗:
其他:
kill <PID>
Run Code Online (Sandbox Code Playgroud)
对于 Mac 用户:
通常问题是另一个进程保持 Maven 调试端口 5005 打开。所以我通过执行检查了哪个进程保持这个端口打开:
lsof -i tcp:5005
Run Code Online (Sandbox Code Playgroud)
输出是:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 9089 my_user 7u IPv4 0xe88ec542fd4cffc9 0t0 TCP *:avt-profile-2 (LISTEN)
Run Code Online (Sandbox Code Playgroud)
然后我杀死了这个过程:
kill -9 9089
Run Code Online (Sandbox Code Playgroud)
如果您希望这两个进程能够一起运行,则必须更改其中至少一个的 Maven 调试端口。请参阅:http : //maven.apache.org/surefire/maven-surefire-plugin/examples/debugging.html。
小智 5
转到Debug configuration-> Remote Java Application->Connect选项卡,检查Allow termination of remote JVM。
然后,当您要重新启动服务器/ Maven时,请转到Debug perspective并单击read / stop按钮。
| 归档时间: |
|
| 查看次数: |
64866 次 |
| 最近记录: |