Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » TMF (Xtext) » xtext2 OutOfMemoryError
xtext2 OutOfMemoryError [message #676006] Thu, 02 June 2011 11:13 Go to next message
Elhamlaoui Mahmoud is currently offline Elhamlaoui MahmoudFriend
Messages: 268
Registered: March 2010
Senior Member
Hi,

I created a xtext project from an Ecore, when i tried the run the workflow, it dispaly an error java.lang.OutOfMemoryError: Java heap space. I ve configured the Workflow VM parameter like below : -Xms40m -Xmx1500m an iam in a 64 bit machine with 8GB in memory (very engough).

Any ideas?
Quote:

Caused by: java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOf(Unknown Source)
at java.util.Arrays.copyOf(Unknown Source)
at java.util.ArrayList.ensureCapacity(Unknown Source)
at java.util.ArrayList.add(Unknown Source)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.addOutgoing(AbstractNFAState.java:88)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:180)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:177)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoing(AbstractNFAState.java:149)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectAllOutgoingTransitions(AbstractNFAState.java:99)
at org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.getOutgoing(AbstractNFAState.java:264)
at org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:75)
at org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
at org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
at org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
at org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
at org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
at org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
at org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
at org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
at org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
at org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
at org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
713020 [main] ERROR mf.mwe2.launch.runtime.Mwe2Launcher - Java heap space
java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOf(Unknown Source)
at java.util.Arrays.copyOf(Unknown Source)
at java.util.ArrayList.ensureCapacity(Unknown Source)
at java.util.ArrayList.add(Unknown Source)
at org.antlr.runtime.CommonTokenStream.fillBuffer(CommonTokenStream.java:116)
at org.antlr.runtime.CommonTokenStream.LT(CommonTokenStream.java:238)
at org.eclipse.internal.xpand2.parser.XpandLocationAddingParser.start(XpandLocationAddingParser.java:43)
at org.eclipse.internal.xpand2.parser.XpandLocationAddingParser.template(XpandLocationAddingParser.java:289)
at org.eclipse.internal.xpand2.parser.XpandParseFacade.file(XpandParseFacade.java:44)
at org.eclipse.internal.xpand2.parser.XpandParseFacade.file(XpandParseFacade.java:31)
at org.eclipse.xpand2.XpandExecutionContextImpl$1.parse(XpandExecutionContextImpl.java:174)
at org.eclipse.xtend.expression.ResourceManagerDefaultImpl.loadResource(ResourceManagerDefaultImpl.java:70)
at org.eclipse.xpand2.XpandExecutionContextImpl.findTemplate(XpandExecutionContextImpl.java:277)
at org.eclipse.xpand2.XpandExecutionContextImpl.findTemplate(XpandExecutionContextImpl.java:270)
at org.eclipse.xpand2.XpandExecutionContextImpl.findDefinition(XpandExecutionContextImpl.java:227)
at org.eclipse.internal.xpand2.ast.ExpandStatement.invokeDefinition(ExpandStatement.java:233)
at org.eclipse.internal.xpand2.ast.ExpandStatement.evaluateInternal(ExpandStatement.java:226)
at org.eclipse.internal.xpand2.ast.Statement.evaluate(Statement.java:41)
at org.eclipse.internal.xpand2.ast.AbstractDefinition.evaluate(AbstractDefinition.java:180)
at org.eclipse.xpand2.XpandFacade.evaluate2(XpandFacade.java:62)
at org.eclipse.xtext.generator.AbstractGeneratorFragment.generate(AbstractGeneratorFragment.java:43)
at org.eclipse.xtext.generator.parser.antlr.AbstractAntlrGeneratorFragment.generate(AbstractAntlrGeneratorFragment.java:90)
at org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment.generate(XtextAntlrGeneratorFragment.java:41)
at org.eclipse.xtext.generator.CompositeGeneratorFragment.generate(CompositeGeneratorFragment.java:81)
at org.eclipse.xtext.generator.LanguageConfig.generate(LanguageConfig.java:69)
at org.eclipse.xtext.generator.Generator.generate(Generator.java:351)
at org.eclipse.xtext.generator.Generator.invokeInternal(Generator.java:125)
at org.eclipse.emf.mwe.core.lib.AbstractWorkflowComponent.invoke(AbstractWorkflowComponent.java:126)
at org.eclipse.emf.mwe.core.lib.Mwe2Bridge.invoke(Mwe2Bridge.java:34)
at org.eclipse.emf.mwe.core.lib.AbstractWorkflowComponent.invoke(AbstractWorkflowComponent.java:201)
at org.eclipse.emf.mwe2.runtime.workflow.AbstractCompositeWorkflowComponent.invoke(AbstractCompositeWorkflowComponent.java:35)
at org.eclipse.emf.mwe2.runtime.workflow.Workflow.run(Workflow.java:19)


My workflow
Quote:

module org.xtext.example.mydsl.Sourceg2Dsl

import org.eclipse.emf.mwe.utils.*
import org.eclipse.xtext.generator.*
import org.eclipse.xtext.ui.generator.*

var grammarURI = "classpath:/org/xtext/example/mydsl/Sourceg2Dsl.xtext"
var file.extensions = "sourceg2dsl"
var projectName = "com.sourceg2dsl"
var runtimeProject = "../${projectName}"

Workflow {
bean = StandaloneSetup {
platformUri = "${runtimeProject}/.."
registerGeneratedEPackage = "GM.GMPackage"

// registerGenModelFile = "platform:/resource/com.metamodels.gm/model/GM.genmodel"

}

component = DirectoryCleaner {
directory = "${runtimeProject}/src-gen"
}

component = DirectoryCleaner {
directory = "${runtimeProject}.ui/src-gen"
}

component = Generator {
pathRtProject = runtimeProject
pathUiProject = "${runtimeProject}.ui"
projectNameRt = projectName
projectNameUi = "${projectName}.ui"
language = {
uri = grammarURI
fileExtensions = file.extensions

// Java API to access grammar elements (required by several other fragments)
fragment = grammarAccess.GrammarAccessFragment {}

// generates Java API for the generated EPackages
// fragment = ecore.EcoreGeneratorFragment {}

// the serialization component
fragment = parseTreeConstructor.ParseTreeConstructorFragment {}

// a custom ResourceFactory for use with EMF
fragment = resourceFactory.ResourceFactoryFragment {
fileExtensions = file.extensions
}

// the Antlr parser
fragment = parser.antlr.XtextAntlrGeneratorFragment {
options = {
classSplitting = true
}
}

// the Ecore2Xtext specific terminal converter
fragment = ecore2xtext.Ecore2XtextValueConverterServiceFragment {}

// java-based API for validation
fragment = validation.JavaValidatorFragment {
// composedCheck = "org.eclipse.xtext.validation.ImportUriValidator"
// composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator"
}

// scoping and exporting API
fragment = scoping.ImportURIScopingFragment {}
fragment = exporting.SimpleNamesFragment {}

// scoping and exporting API

// fragment = scoping.ImportNamespacesScopingFragment {}
// fragment = exporting.QualifiedNamesFragment {}


// formatter API
fragment = ecore2xtext.FormatterFragment {}

// labeling API
fragment = labeling.LabelProviderFragment {}

// outline API
fragment = outline.OutlineTreeProviderFragment {}
fragment = outline.QuickOutlineFragment {}

// java-based API for content assistance
fragment = contentAssist.JavaBasedContentAssistFragment {}

// antlr parser generator tailored for content assist
fragment = parser.antlr.XtextAntlrUiGeneratorFragment {
options = {
classSplitting = true
}
}

// provides a compare view
fragment = compare.CompareFragment {
fileExtensions = file.extensions
}

fragment = builder.BuilderIntegrationFragment {}

// project wizard (optional)

// fragment = projectWizard.SimpleProjectWizardFragment {
// generatorProjectName = "${projectName}.generator"
// modelFileExtension = file.extensions
// }

// quickfix API
fragment = quickfix.QuickfixProviderFragment {}
}
}
}

Thanks in advance
Re: xtext2 OutOfMemoryError [message #676011 is a reply to message #676006] Thu, 02 June 2011 11:37 Go to previous messageGo to next message
Christian Dietrich is currently offline Christian DietrichFriend
Messages: 14665
Registered: July 2009
Senior Member
Hi,

did you try to set -XX:PermSize too?

~Christian


Twitter : @chrdietrich
Blog : https://www.dietrich-it.de
Re: xtext2 OutOfMemoryError [message #676054 is a reply to message #676011] Thu, 02 June 2011 16:07 Go to previous messageGo to next message
Elhamlaoui Mahmoud is currently offline Elhamlaoui MahmoudFriend
Messages: 268
Registered: March 2010
Senior Member
Hi Christian,
yes i tried the permsize and i ve got an GC limit so ive added -XX:-UseGCOverheadLimit
Quote:
-Xms40m
-Xmx5500m
-XX:-UseGCOverheadLimit
-XX:PermSize=256M
-XX:MaxPermSize=512M

it tooks me one hour of generation to get the famous error:
Quote:


4855654 [main] ERROR mf.mwe2.launch.runtime.Mwe2Launcher - Java heap space
java.lang.OutOfMemoryError: Java heap space
at java.util.jar.JarFile.getBytes(Unknown Source)
at java.util.jar.JarFile.getManifestFromReference(Unknown Source)
at java.util.jar.JarFile.getManifest(Unknown Source)
at sun.misc.URLClassPath$JarLoader$2.getManifest(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at org.apache.log4j.spi.LoggingEvent.<init>(LoggingEvent.java:159)
at org.apache.log4j.Category.forcedLog(Category.java:391)
at org.apache.log4j.Category.error(Category.java:322)
at org.eclipse.xtext.generator.CompositeGeneratorFragment.generate(CompositeGeneratorFragment.java:85)
at org.eclipse.xtext.generator.LanguageConfig.generate(LanguageConfig.java:69)
at org.eclipse.xtext.generator.Generator.generate(Generator.java:351)
at org.eclipse.xtext.generator.Generator.invokeInternal(Generator.java:125)
at org.eclipse.emf.mwe.core.lib.AbstractWorkflowComponent.invoke(AbstractWorkflowComponent.java:126)
at org.eclipse.emf.mwe.core.lib.Mwe2Bridge.invoke(Mwe2Bridge.java:34)
at org.eclipse.emf.mwe.core.lib.AbstractWorkflowComponent.invoke(AbstractWorkflowComponent.java:201)
at org.eclipse.emf.mwe2.runtime.workflow.AbstractCompositeWorkflowComponent.invoke(AbstractCompositeWorkflowComponent.java:35)
at org.eclipse.emf.mwe2.runtime.workflow.Workflow.run(Workflow.java:19)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:97)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:73)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:64)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:55)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.run(Mwe2Launcher.java:74)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main(Mwe2Launcher.java:35)
Re: xtext2 OutOfMemoryError [message #676058 is a reply to message #676054] Thu, 02 June 2011 16:22 Go to previous messageGo to next message
Christian Dietrich is currently offline Christian DietrichFriend
Messages: 14665
Registered: July 2009
Senior Member
Hi,

then - as always - filing a bug with a reproducable example might be helpful.

~Christian


Twitter : @chrdietrich
Blog : https://www.dietrich-it.de
Re: xtext2 OutOfMemoryError [message #676111 is a reply to message #676006] Thu, 02 June 2011 21:17 Go to previous message
Sebastian Zarnekow is currently offline Sebastian ZarnekowFriend
Messages: 3118
Registered: July 2009
Senior Member
Hi Elhamlaoui,

please file a ticket and attach the ecore file that you used with the
wizard.

Thanks,
Sebastian
--
Need professional support for Eclipse Modeling?
Go visit: http://xtext.itemis.com


Am 02.06.11 13:13, schrieb elhamlaoui:
> Hi,
>
> I created a xtext project from an Ecore, when i tried the run the
> workflow, it dispaly an error java.lang.OutOfMemoryError: Java heap
> space. I ve configured the Workflow VM parameter like below : -Xms40m
> -Xmx1500m an iam in a 64 bit machine with 8GB in memory (very engough).
>
> Any ideas?
> Quote:
>> Caused by: java.lang.OutOfMemoryError: Java heap space
>> at java.util.Arrays.copyOf(Unknown Source)
>> at java.util.Arrays.copyOf(Unknown Source)
>> at java.util.ArrayList.ensureCapacity(Unknown Source)
>> at java.util.ArrayList.add(Unknown Source)
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.addOutgoing(AbstractNFAState.java:88)
>>
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:180)
>>
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
>>
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
>>
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
>>
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
>>
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
>>
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
>>
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
>>
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
>>
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
>>
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:182)
>>
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoingByContainer(AbstractNFAState.java:177)
>>
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectOutgoing(AbstractNFAState.java:149)
>>
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.collectAllOutgoingTransitions(AbstractNFAState.java:99)
>>
>> at
>> org.eclipse.xtext.grammaranalysis.impl.AbstractNFAState.getOutgoing(AbstractNFAState.java:264)
>>
>> at
>> org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:75)
>>
>> at
>> org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
>>
>> at
>> org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
>>
>> at
>> org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
>>
>> at
>> org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
>>
>> at
>> org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
>>
>> at
>> org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
>>
>> at
>> org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
>>
>> at
>> org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
>>
>> at
>> org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
>>
>> at
>> org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
>>
>> at
>> org.eclipse.xtext.parsetree.reconstr.impl.TreeConstState.calculateDistances(TreeConstState.java:77)
>>
>> 713020 [main] ERROR mf.mwe2.launch.runtime.Mwe2Launcher - Java heap space
>> java.lang.OutOfMemoryError: Java heap space
>> at java.util.Arrays.copyOf(Unknown Source)
>> at java.util.Arrays.copyOf(Unknown Source)
>> at java.util.ArrayList.ensureCapacity(Unknown Source)
>> at java.util.ArrayList.add(Unknown Source)
>> at
>> org.antlr.runtime.CommonTokenStream.fillBuffer(CommonTokenStream.java:116)
>>
>> at org.antlr.runtime.CommonTokenStream.LT(CommonTokenStream.java:238)
>> at
>> org.eclipse.internal.xpand2.parser.XpandLocationAddingParser.start(XpandLocationAddingParser.java:43)
>>
>> at
>> org.eclipse.internal.xpand2.parser.XpandLocationAddingParser.template(XpandLocationAddingParser.java:289)
>>
>> at
>> org.eclipse.internal.xpand2.parser.XpandParseFacade.file(XpandParseFacade.java:44)
>>
>> at
>> org.eclipse.internal.xpand2.parser.XpandParseFacade.file(XpandParseFacade.java:31)
>>
>> at
>> org.eclipse.xpand2.XpandExecutionContextImpl$1.parse(XpandExecutionContextImpl.java:174)
>>
>> at
>> org.eclipse.xtend.expression.ResourceManagerDefaultImpl.loadResource(ResourceManagerDefaultImpl.java:70)
>>
>> at
>> org.eclipse.xpand2.XpandExecutionContextImpl.findTemplate(XpandExecutionContextImpl.java:277)
>>
>> at
>> org.eclipse.xpand2.XpandExecutionContextImpl.findTemplate(XpandExecutionContextImpl.java:270)
>>
>> at
>> org.eclipse.xpand2.XpandExecutionContextImpl.findDefinition(XpandExecutionContextImpl.java:227)
>>
>> at
>> org.eclipse.internal.xpand2.ast.ExpandStatement.invokeDefinition(ExpandStatement.java:233)
>>
>> at
>> org.eclipse.internal.xpand2.ast.ExpandStatement.evaluateInternal(ExpandStatement.java:226)
>>
>> at org.eclipse.internal.xpand2.ast.Statement.evaluate(Statement.java:41)
>> at
>> org.eclipse.internal.xpand2.ast.AbstractDefinition.evaluate(AbstractDefinition.java:180)
>>
>> at org.eclipse.xpand2.XpandFacade.evaluate2(XpandFacade.java:62)
>> at
>> org.eclipse.xtext.generator.AbstractGeneratorFragment.generate(AbstractGeneratorFragment.java:43)
>>
>> at
>> org.eclipse.xtext.generator.parser.antlr.AbstractAntlrGeneratorFragment.generate(AbstractAntlrGeneratorFragment.java:90)
>>
>> at
>> org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment.generate(XtextAntlrGeneratorFragment.java:41)
>>
>> at
>> org.eclipse.xtext.generator.CompositeGeneratorFragment.generate(CompositeGeneratorFragment.java:81)
>>
>> at
>> org.eclipse.xtext.generator.LanguageConfig.generate(LanguageConfig.java:69)
>>
>> at org.eclipse.xtext.generator.Generator.generate(Generator.java:351)
>> at
>> org.eclipse.xtext.generator.Generator.invokeInternal(Generator.java:125)
>> at
>> org.eclipse.emf.mwe.core.lib.AbstractWorkflowComponent.invoke(AbstractWorkflowComponent.java:126)
>>
>> at org.eclipse.emf.mwe.core.lib.Mwe2Bridge.invoke(Mwe2Bridge.java:34)
>> at
>> org.eclipse.emf.mwe.core.lib.AbstractWorkflowComponent.invoke(AbstractWorkflowComponent.java:201)
>>
>> at
>> org.eclipse.emf.mwe2.runtime.workflow.AbstractCompositeWorkflowComponent.invoke(AbstractCompositeWorkflowComponent.java:35)
>>
>> at org.eclipse.emf.mwe2.runtime.workflow.Workflow.run(Workflow.java:19)
>
>
> My workflow Quote:
>> module org.xtext.example.mydsl.Sourceg2Dsl
>>
>> import org.eclipse.emf.mwe.utils.*
>> import org.eclipse.xtext.generator.*
>> import org.eclipse.xtext.ui.generator.*
>>
>> var grammarURI = "classpath:/org/xtext/example/mydsl/Sourceg2Dsl.xtext"
>> var file.extensions = "sourceg2dsl"
>> var projectName = "com.sourceg2dsl"
>> var runtimeProject = "../${projectName}"
>>
>> Workflow {
>> bean = StandaloneSetup {
>> platformUri = "${runtimeProject}/.."
>> registerGeneratedEPackage = "GM.GMPackage"
>>
>> // registerGenModelFile =
>> "platform:/resource/com.metamodels.gm/model/GM.genmodel"
>>
>> }
>>
>> component = DirectoryCleaner {
>> directory = "${runtimeProject}/src-gen"
>> }
>>
>> component = DirectoryCleaner {
>> directory = "${runtimeProject}.ui/src-gen"
>> }
>>
>> component = Generator {
>> pathRtProject = runtimeProject
>> pathUiProject = "${runtimeProject}.ui"
>> projectNameRt = projectName
>> projectNameUi = "${projectName}.ui"
>> language = {
>> uri = grammarURI
>> fileExtensions = file.extensions
>>
>> // Java API to access grammar elements (required by several other
>> fragments)
>> fragment = grammarAccess.GrammarAccessFragment {}
>>
>> // generates Java API for the generated EPackages
>> // fragment = ecore.EcoreGeneratorFragment {}
>>
>> // the serialization component
>> fragment = parseTreeConstructor.ParseTreeConstructorFragment {}
>>
>> // a custom ResourceFactory for use with EMF fragment =
>> resourceFactory.ResourceFactoryFragment {
>> fileExtensions = file.extensions
>> }
>>
>> // the Antlr parser
>> fragment = parser.antlr.XtextAntlrGeneratorFragment {
>> options = {
>> classSplitting = true
>> }
>> }
>>
>> // the Ecore2Xtext specific terminal converter
>> fragment = ecore2xtext.Ecore2XtextValueConverterServiceFragment {}
>>
>> // java-based API for validation fragment =
>> validation.JavaValidatorFragment {
>> // composedCheck = "org.eclipse.xtext.validation.ImportUriValidator"
>> // composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator"
>> }
>>
>> // scoping and exporting API
>> fragment = scoping.ImportURIScopingFragment {}
>> fragment = exporting.SimpleNamesFragment {}
>>
>> // scoping and exporting API
>> // fragment = scoping.ImportNamespacesScopingFragment {}
>> // fragment = exporting.QualifiedNamesFragment {}
>>
>>
>> // formatter API fragment = ecore2xtext.FormatterFragment {}
>>
>> // labeling API fragment = labeling.LabelProviderFragment {}
>>
>> // outline API fragment = outline.OutlineTreeProviderFragment {}
>> fragment = outline.QuickOutlineFragment {}
>>
>> // java-based API for content assistance fragment =
>> contentAssist.JavaBasedContentAssistFragment {}
>>
>> // antlr parser generator tailored for content assist fragment =
>> parser.antlr.XtextAntlrUiGeneratorFragment {
>> options = {
>> classSplitting = true
>> }
>> }
>>
>> // provides a compare view
>> fragment = compare.CompareFragment {
>> fileExtensions = file.extensions
>> }
>>
>> fragment = builder.BuilderIntegrationFragment {}
>>
>> // project wizard (optional)
>> // fragment = projectWizard.SimpleProjectWizardFragment {
>> // generatorProjectName = "${projectName}.generator" //
>> modelFileExtension = file.extensions
>> // }
>>
>> // quickfix API fragment = quickfix.QuickfixProviderFragment {}
>> }
>> }
>> }
>
> Thanks in advance
Previous Topic:Load default models in all files
Next Topic:generate wrong meta-model
Goto Forum:
  


Current Time: Thu Apr 25 22:35:48 GMT 2024

Powered by FUDForum. Page generated in 0.02936 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top