Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[platform-dev] Need a mock IJavaProject

Hi,

to test my plugin I'd need a mock IJavaProject and I found AbstractJavaModelTests.createJavaProject(). I can run it successfully in Eclipse, but I'd like to run it from commandline and do a coverage report. Unfortunatley I get an ExceptionInInitializerError. Breakpoints to investigate this are not reached.

I tried to learn from the automated tests, but had no luck. So any help is really appreciated!

Here is the exception:

    [java] java.lang.ExceptionInInitializerError
[java] at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:1013) [java] at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:969) [java] at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:321) [java] at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:339) [java] at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1024) [java] at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:576) [java] at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:498) [java] at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:275) [java] at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:458) [java] at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) [java] at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291)
    [java] Caused by: java.lang.NullPointerException
[java] at org.eclipse.osgi.framework.internal.core.MessageResourceBundle.load(MessageResourceBundle.java:203)
    [java] at org.eclipse.osgi.util.NLS.initializeMessages(NLS.java:88)
[java] at org.eclipse.osgi.framework.internal.core.Msg.<clinit>(Msg.java:100)
    [java] ... 11 more
    [java] java.lang.ExceptionInInitializerError
[java] at org.eclipse.core.runtime.adaptor.EclipseAdaptor.handleRuntimeError(EclipseAdaptor.java:774) [java] at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:463) [java] at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189) [java] at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:291)
    [java] Caused by: java.lang.NullPointerException
[java] at org.eclipse.osgi.framework.internal.core.MessageResourceBundle.load(MessageResourceBundle.java:203)
    [java] at org.eclipse.osgi.util.NLS.initializeMessages(NLS.java:88)
[java] at org.eclipse.core.runtime.adaptor.EclipseAdaptorMsg.<clinit>(EclipseAdaptorMsg.java:99)
    [java] ... 4 more

And here is my buildfile. I added as long as ClassNotFoundException occured jars to the bootclasspath. Don't know if this is a good idea...

   <target name="runtests">
       <property name="pluginname" value="myplugin"/>
       <property name="classname" value="mypackage.MyTest"/>
<property name="application" value="org.eclipse.test.coretestapplication"/>
       <property name="launcher" value="org.eclipse.core.launcher.Main"/>
<property name="formatter" value="org.apache.tools.ant.taskdefs.optional.junit.XMLJUnitResultFormatter"/> <delete dir="${basedir}/junit-workbench-workspace" failonerror="false"/>
       <java fork="yes" classname="${launcher}" failonerror="true">
           <arg value="-dev"/>
           <arg value="${basedir}/${pluginname}.jar"/>
           <arg value="-data"/>
           <arg value="${basedir}/junit-workbench-workspace"/>
           <arg value="-application"/>
           <arg value="${application}"/>
           <arg value="formatter=${formatter},${classname}.xml"/>
           <arg value="-testpluginname"/>
           <arg value="${pluginname}"/>
           <arg value="-classname"/>
           <arg value="${classname}"/>
           <arg value="-consolelog"/>
           <classpath>
               <pathelement location="${ECLIPSE_HOME}/startup.jar"/>
           </classpath>
           <bootclasspath>
               <fileset dir="${java.home}/lib">
                   <include name="*.jar"/>
               </fileset>
<pathelement location="${ant.library.dir}/clover-1.3.9.jar"/>
               <pathelement location="${ant.library.dir}/junit-3.8.1.jar"/>
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.core.resources_3.1.0.jar"/> <pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.core.runtime_3.1.0.jar"/> <pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.osgi_3.1.0.jar"/> <pathelement location="${ECLIPSE_TESTING_HOME}/plugins/org.eclipse.jdt.core.tests.model_3.1.0/jdtcoretestsmodel.jar"/> <pathelement location="${ECLIPSE_TESTING_HOME}/plugins/org.eclipse.jdt.core.tests.compiler_3.1.0/jdtcoretestscompiler.jar"/> <pathelement location="${ECLIPSE_TESTING_HOME}/plugins/org.eclipse.test.performance_3.1.0/testperformance.jar"/>
           </bootclasspath>
       </java>
   </target>

_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today it's FREE! http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/



Back to the top