在Eclipse中调试Cactus测试

时间:2010-12-21 22:35:10

标签: eclipse remote-debugging cactus

附注:这是继承的代码,我没有做任何设置,也不熟悉项目。

我正在尝试在Eclipse中为使用Cactus的这些单元测试设置远程调试。我已经阅读了一下(但我似乎无法找到任何真实的信息如何设置它)。我发现最接近的是(http://www.eclipse.org/webtools/community/tutorials/CactusInWTP/CactusInWTP.html),但它只是说调试 - >在服务器上调试,但它没有说明调试端口的设置或任何地方,我找不到任何关于如何启用它的设置,设置它。

只是想知道是否有人之前已经设置过它,它真的有助于单步执行代码而不仅仅是记录。该插件(http://jakarta.apache.org/cactus/integration/eclipse/runner_plugin.html)看起来很有前途,但我也不知道在哪里下载它,它没有链接到一个位置-.-

该项目使用ant,cactus,我正在使用Eclipse。感谢

修改 这是我正在使用的目标

<junit fork="no" forkmode="perTest" printsummary="yes" haltonfailure="no" haltonerror="no" failureproperty="tests.failed">
            <jvmarg value="-Xdebug" />
            <jvmarg value="-Xrunjdwp:transport=dt_socket,address=localhost:8005,server=y,suspend=y" />
            <formatter type="xml" usefile="true" />
            <formatter type="plain" usefile="false" />
            <classpath>
                <pathelement location="${clover.jar}"/>
                <path refid="cactus.classpath.id" />
                <pathelement location="../ejb/src" />
            </classpath>
            <sysproperty key="cactus.contextURL" value="${cactus.contextURL}"/>
            <test name="com.test.AllTests" outfile="TESTS" />
        </junit>

1 个答案:

答案 0 :(得分:0)

不熟悉w / Cactus,但你应该可以使用JPDA而不是JDWP。简单地在JVM args中放置这样的东西(在Eclipse运行配置,java cmd行中,或者Cactus接受它的JVM用于JVM):

-agentlib:JDWP =运输= dt_socket,地址=本地主机:1234,服务器= Y,暂停= Y

(或使用“-Xrunjdwp:”代替“-agentlib:jdwp”,如果JRE版本<5)

然后无论你在哪里开始它都会等你连接。然后在Eclipse中创建一个新的调试配置作为远程Java应用程序。将您希望调试的源放入Source选项卡。确保连接类型为“标准(套接字连接)”,并将localhost放入主机,将1234放入端口。然后启动调试配置,你应该很好。