| [news.eclipse.modeling.m2m] Re: [ATL] Ant task problem |
Hello,
Best regards,
William
Hi,
I've found nothing a bout ATL ant tasks, I therefore I my question. I'm trrying to launch an ATL transformation with ant. A part of my ant script can be found hereafter. ======================================================================
<project>
<path id="pluginsclasspath">
<pathelement location="${basedir}/lib/atlAntTasks.jar"/>
<fileset dir="C:/sfo/tools/ganymede/plugins" includes="**/*.jar"/>
</path>
<property name="atl.launcher" value="EMF-specific VM" />
<taskdef name="atl.loadModel" classname="org.eclipse.m2m.atl.core.ant.tasks.LoadModelTask">
<classpath>
<path refid="pluginsclasspath"/>
</classpath>
</taskdef> <atl.loadModel name="UML" metamodel="MOF" nsURI="http://www.eclipse.org/uml2/2.1.0/UML" />
</project>
=========================================================================
On runnuing that script, I get the following error message :
=========================================================================
org.eclipse.m2m.atl.core.ATLCoreException: org.eclipse.m2m.atl.core.launcher EMF-specific VM not found, check the spelling or register it manually.
=========================================================================
The detailed exception follows :
C:\sfo\work\svnspace\PMETAMODEL-TRANS\build.xml:30: Unable to load launcher EMF-specific VM
at ...
org.eclipse.m2m.atl.core.ATLCoreException: org.eclipse.m2m.atl.core.launcher EMF-specific VM not found, check the spelling or register it manually
at org.eclipse.m2m.atl.core.service.CoreService.getExtensionClass(CoreService.java:148)
at org.eclipse.m2m.atl.core.service.CoreService.getLauncher(CoreService.java:186)
at org.eclipse.m2m.atl.core.ant.tasks.AbstractAtlTask.getLauncher(AbstractAtlTask.java:131)
at org.eclipse.m2m.atl.core.ant.tasks.AbstractAtlTask.getDefaultModelFactory(AbstractAtlTask.java:148)
at org.eclipse.m2m.atl.core.ant.tasks.LoadModelTask.execute(LoadModelTask.java:110)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:142)
at org.apache.tools.ant.ProjectHelper.configureProject(ProjectHelper.java:93)
at org.apache.tools.ant.Main.runBuild(Main.java:743)
at org.apache.tools.ant.Main.startAnt(Main.java:217)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
================================================================
I finally understood that org.eclipse.m2m.atl.core.service.CoreService.getExtensionClass failed to retrieve the name of the class related to the extension point org.eclipse.m2m.core.atl.launcher. What seems really strange is that everything works well within Eclipse with the same class CoreService, which means that the way it raeds information from Eclipse plugin registry is OK. I wondered whether everything necessary could be found into my class path. I therefor put all the jars of my eclipse plugins directory in the classpath, but I still have the error. I really don't see what I should check, If someone has an idea.
I use atl 3.0 and eclipse ganymede.
Regards,
Stephane