RCP程序的调试只要在RCP应用程序目录下的ini文件下添加如下的配置:
-vmargs
-Xdebug
-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=y
上面的配置能够调试RCP应用程序的启动(也就是说,只有当调试线程开启后,才能够启动这个应用程序),调试端口为8000
下面贴一段ant的编译脚本:
<?xml version="1.0"?>
<project name="build_example" default="update" basedir=".">
<property name="eclipse.home" value="G:\Program Files\eclipse\plugins"/>
<property name="src.dir" value="${basedir}/src"/>
<property name="build.dir" value="${basedir}/build"/>
<property name="classes.dir" value="${build.dir}/classes"/>
<property name="jar.dir" value="C:\"/>
<property name="jar.name" value="com.siemens.ct.mp3m_3.6.2.v201105241108.jar" />
<property name="plugine.classpath" value="
${eclipse.home}/org.eclipse.core.commands_3.6.0.I20100512-1500.jar;${eclipse.home}/org.eclipse.core.contenttype_3.4.100.v20100505-1235.jar;${eclipse.home}/org.eclipse.core.jobs_3.5.1.R36x_v20100824.jar;${eclipse.home}/org.eclipse.core.runtime_3.6.0.v20100505.jar;${eclipse.home}/org.eclipse.equinox.app_1.3.1.R36x_v20100803.jar;${eclipse.home}/org.eclipse.equinox.common_3.6.0.v20100503.jar;${eclipse.home}/org.eclipse.equinox.preferences_3.3.0.v20100503.jar;${eclipse.home}/org.eclipse.equinox.registry_3.5.0.v20100503.jar;${eclipse.home}/org.eclipse.jface_3.6.2.M20110210-1200.jar;${eclipse.home}/org.eclipse.osgi_3.6.2.R36x_v20110210.jar;${eclipse.home}/org.eclipse.swt.win32.win32.x86_3.6.2.v3659c.jar;${eclipse.home}/org.eclipse.swt_3.6.2.v3659c.jar;${eclipse.home}/org.eclipse.ui_3.6.2.M20110203-1100.jar;${eclipse.home}/org.eclipse.ui.workbench_3.6.2.M20110210-1200.jar;${eclipse.home}/org.eclipse.core.runtime.compatibility.registry_3.3.0.v20100520\runtime_registry_compatibility.jar
"/>
<property name="mp3m.dir" value="C:\mp3m\plugins"/>
<path id="mp3m.classpath">
<fileset dir="${mp3m.dir}" includes="**/*.jar"/>
</path>
<target name="clean">
<delete dir="${build.dir}" />
</target>
<target name="init" depends="clean">
<mkdir dir="${build.dir}"/>
<mkdir dir="${classes.dir}" />
</target>
<target name="compile" depends="init">
<javac srcdir="${src.dir}"
destdir="${classes.dir}"
debug="on">
<classpath>
<path refid="mp3m.classpath"/>
</classpath>
<include name="**/*.java"/>
</javac>
</target>
<target name="update" depends="compile">
<jar destfile="${jar.dir}/${jar.name}"
basedir="${classes.dir}"
includes="**/*.class"
update="yes">
</jar>
</target>
</project>