Xtext doesn't generate files in <proj_name>.impl and <proj_name>.util [message #754082] |
Mon, 31 October 2011 17:00 |
Nadezhda Baklanova Messages: 9 Registered: October 2011 |
Junior Member |
|
|
Hi,
I encountered a strange issue: Xtext doesn't generate files under src-gen/mymodel.annotations.impl and src-gen/mymodel.annotations.util. Log contains nothing criminal:
0 [main] INFO lipse.emf.mwe.utils.StandaloneSetup - Registering platform uri '/home/aaa/workspace'
839 [main] INFO ipse.emf.mwe.utils.DirectoryCleaner - Cleaning /home/aaa/workspace/mymodel/../mymodel/src-gen
842 [main] INFO ipse.emf.mwe.utils.DirectoryCleaner - Cleaning /home/aaa/workspace/mymodel/../mymodel.ui/src-gen
1021 [main] INFO ipse.xtext.generator.LanguageConfig - generating infrastructure for mymodel.Annotations with fragments : ImplicitRuntimeFragment, ImplicitUiFragment, GrammarAccessFragment, EcoreGeneratorFragment, SerializerFragment, ResourceFactoryFragment, XtextAntlrGeneratorFragment, JavaValidatorFragment, ImportNamespacesScopingFragment, QualifiedNamesFragment, BuilderIntegrationFragment, GeneratorFragment, FormatterFragment, LabelProviderFragment, OutlineTreeProviderFragment, QuickOutlineFragment, QuickfixProviderFragment, JavaBasedContentAssistFragment, XtextAntlrUiGeneratorFragment, Junit4Fragment, TypesGeneratorFragment, XbaseGeneratorFragment, CodetemplatesGeneratorFragment, RefactorElementNameFragment, CompareFragment
4460 [main] INFO clipse.emf.mwe.utils.GenModelHelper - Registered GenModel 'http: //mymodel/Annotations' from 'file:/home/aaa/workspace/mymodel/src-gen/mymodel/Annotations.genmodel'
9800 [main] INFO or.validation.JavaValidatorFragment - generating Java-based EValidator API
12907 [main] INFO text.generator.junit.Junit4Fragment - generating Junit4 Test support classes
12934 [main] INFO text.generator.junit.Junit4Fragment - generating Compare Framework infrastructure
13076 [main] INFO .emf.mwe2.runtime.workflow.Workflow - Done.
The only change in the generated .mwe2 was enabling backtracking
Workflow {
bean = StandaloneSetup {
scanClassPath = true
platformUri = "${runtimeProject}/.."
}
component = DirectoryCleaner {
directory = "${runtimeProject}/src-gen"
}
component = DirectoryCleaner {
directory = "${runtimeProject}.ui/src-gen"
}
component = Generator {
pathRtProject = runtimeProject
pathUiProject = "${runtimeProject}.ui"
pathTestProject = "${runtimeProject}.tests"
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 {
}
// Serializer 2.0
fragment = serializer.SerializerFragment {}
// a custom ResourceFactory for use with EMF
fragment = resourceFactory.ResourceFactoryFragment {
fileExtensions = file.extensions
}
// The antlr parser generator fragment.
fragment = parser.antlr.XtextAntlrGeneratorFragment {
options = {
backtrack = true
}
}
// 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.ImportNamespacesScopingFragment {}
fragment = exporting.QualifiedNamesFragment {}
fragment = builder.BuilderIntegrationFragment {}
// generator API
fragment = generator.GeneratorFragment {
generateMwe = true
generateJavaMain = true
}
// formatter API
fragment = formatting.FormatterFragment {}
// labeling API
fragment = labeling.LabelProviderFragment {}
// outline API
fragment = outline.OutlineTreeProviderFragment {}
fragment = outline.QuickOutlineFragment {}
// quickfix API
fragment = quickfix.QuickfixProviderFragment {}
// content assist API
fragment = contentAssist.JavaBasedContentAssistFragment {}
// generates a more lightweight Antlr parser and lexer tailored for content assist
fragment = parser.antlr.XtextAntlrUiGeneratorFragment {}
// generates junit test support classes into Generator#pathTestProject
fragment = junit.Junit4Fragment {}
// provides the necessary bindings for java types integration
fragment = types.TypesGeneratorFragment {}
// generates the required bindings only if the grammar inherits from Xbase
fragment = xbase.XbaseGeneratorFragment {}
// provides a preference page for template proposals
fragment = templates.CodetemplatesGeneratorFragment {}
// rename refactoring
fragment = refactoring.RefactorElementNameFragment {}
// provides a compare view
fragment = compare.CompareFragment {
fileExtensions = file.extensions
}
}
}
}
Is something missed in mwe2? //I tried to restart eclipse, re-create xtext project but it didn't help.
Thanks!
|
|
|
|
|
|
|
|
|
|
Re: Xtext doesn't generate files in <proj_name>.impl and <proj_name>.uti [message #754215 is a reply to message #754191] |
Tue, 01 November 2011 13:24 |
Ed Willink Messages: 7655 Registered: July 2009 |
Senior Member |
|
|
Hi
That provides insight into the bug, but doesn't explain it to me.
Ah yes it does. I expect the build did happen, and courtesy of an
absolute path somewhere the new-build write to the old folders.
I recall a similar painful experience when converting an auto-generated
Ecore model to manually generated.
However if your copy was of auto-generated material it really should work.
Ah, I recall another painful experience, MWE has a very inefficient
behaviour whereby while building New/'module'.mwe2, it ignores the file
path it is already aware of and searches the class path for
'module'.mwe2, so if your copy preserved the mwe2 module name the
execution may have swapped project half way through to perform the build
of Old/'module'.mwe2 .
Regards
Ed Willink
On 01/11/2011 10:58, Nadezhda Baklanova wrote:
> Hi Christian,
>
> I found the reason - it is dummy enough - my project was bound to CVS,
> then I copied it with all CVS metadata to the same workspace. From CVS
> point of view there were two projects with the same name, and it must
> have caused this strange behavior. Not Xtext issue :) After I deleted
> CVS metadata, generator works as expected.
>
> Thanks for help!
|
|
|
|
Powered by
FUDForum. Page generated in 0.03215 seconds