2009-12-16 40 views
2

我在调试中运行jetty并将IntelliJ IDEA连接到侦听端口时遇到问题。maven,jetty和IDEA的调试问题

mvnDebug jetty:run-exploded

将开始码头,因为我可以看到下面的消息

Preparing to Execute Maven in Debug Mode Listening for transport dt_socket at address: 8000

然而,当我尝试到IDEA连接到端口8000我会在IDE消息说连接,并紧接着断开。当码头会踢以下错误

Exception in thread "main" java.lang.NoClassDefFoundError: org/codehaus/classworlds/Launcher Caused by: java.lang.ClassNotFoundException: org.codehaus.classworlds.Launcher at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) Could not find the main class: org.codehaus.classworlds.Launcher. Program will exit.

我一点这个困惑,因为在码头下运行项目,

mvn jetty:run-exploded

也是我的同事没有问题的情况下有IDEA调试没问题,他和我的设置之间的唯一区别是我有64位机器,他在32位

回答

1

我发现了调试的临时解决方案。

执行前我只是用一些额外的参数重新导出MAVEN_OPTS,所以这只会在当前打开的终端窗口上工作。

我的系统是MAVEN_OPTS export MAVEN_OPTS="-Xms256m -Xmx512m -XX:PermSize=128m -XX:-UseGCOverheadLimit"

和会话改为 export MAVEN_OPTS="-Xms256m -Xmx1500m -XX:PermSize=128m -XX:-UseGCOverheadLimit -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"

我将要讨论“mvnDebug”的别名设置了,当他回来,明天我的同事...

+1

这似乎是mvnDebug中的一个常见错误 – Yaba 2011-02-23 12:38:49