xtext / maven-xtext-example

An Xtext language and example usage of it built with Maven
61 stars 33 forks source link

Exception when built from a aggregator pom at project root. #22

Closed vcottagiri closed 10 years ago

vcottagiri commented 10 years ago

Created a simple pom in the root folder (maven-xtext-example).

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>my.mavenized.herolanguage</groupId>
    <artifactId>my.mavenized.herolanguage.module</artifactId>
    <packaging>pom</packaging>
    <name>${project.artifactId}</name>
    <version>1.0.0-SNAPSHOT</version>

    <modules>
        <module>my.mavenized.herolanguage.releng</module>
        <module>example-project</module>
    </modules>
</project>

During maven build from the root folder (ie without changing directory into releng) the MWE2 workflow fails to find the dsl projects build.properties and MANIFEST.MF.

It looks like the mwe2 build is dependent on the path from which it is triggered.

This is very inconvenient because typically maven projects are organized into many nested multi-module builds, this way building at the root of the project tree builds all projects in it.

Is there anything that can be adjusted in the mwe2 file or the pom to get this to work?

regards, Varghese Cottagiri

Snippet of error log

[INFO] --- exec-maven-plugin:1.2.1:java (default) @ my.mavenized.herolanguage ---
0    [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  lipse.emf.mwe.utils.StandaloneSetup  - Using resourceSet registry. The registered Packages will not be registered in the global EPackage.Registry.INSTANCE!
6    [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  lipse.emf.mwe.utils.StandaloneSetup  - Adding URI mapping from 'platform:/resource/org.eclipse.xtext.xbase/' to 'classpath:/'
8    [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  lipse.emf.mwe.utils.StandaloneSetup  - Adding URI mapping from 'platform:/resource/org.eclipse.xtext.common.types/' to 'classpath:/'
8    [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  lipse.emf.mwe.utils.StandaloneSetup  - Registering platform uri 'D:\workspaces\zafin\github'
2914 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  lipse.emf.mwe.utils.StandaloneSetup  - Adding generated EPackage 'org.eclipse.xtext.xbase.XbasePackage'
3064 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  clipse.emf.mwe.utils.GenModelHelper  - Registered GenModel 'http://www.eclipse.org/Xtext/Xbase/XAnnotations' from 'platform:/resource/org.eclipse.xtext.xbase/model/Xbase.genmodel'
3068 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  clipse.emf.mwe.utils.GenModelHelper  - Registered GenModel 'http://www.eclipse.org/xtext/xbase/Xtype' from 'platform:/resource/org.eclipse.xtext.xbase/model/Xbase.genmodel'
3083 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  clipse.emf.mwe.utils.GenModelHelper  - Registered GenModel 'http://www.eclipse.org/xtext/xbase/Xbase' from 'platform:/resource/org.eclipse.xtext.xbase/model/Xbase.genmodel'
3084 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  clipse.emf.mwe.utils.GenModelHelper  - Registered GenModel 'http://www.eclipse.org/xtext/common/JavaVMTypes' from 'platform:/resource/org.eclipse.xtext.common.types/model/JavaVMTypes.genmodel'
3660 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  lipse.emf.mwe.utils.StandaloneSetup  - Adding generated EPackage 'org.eclipse.xtext.common.types.TypesPackage'
3668 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  ipse.emf.mwe.utils.DirectoryCleaner  - Cleaning d:\workspaces\zafin\github\maven-xtext-example\..\my.mavenized.herolanguage\src-gen
3672 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  ipse.emf.mwe.utils.DirectoryCleaner  - Cleaning d:\workspaces\zafin\github\maven-xtext-example\..\my.mavenized.herolanguage\model
3673 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  ipse.emf.mwe.utils.DirectoryCleaner  - Cleaning d:\workspaces\zafin\github\maven-xtext-example\..\my.mavenized.herolanguage.ui\src-gen
3676 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  ipse.emf.mwe.utils.DirectoryCleaner  - Cleaning d:\workspaces\zafin\github\maven-xtext-example\..\my.mavenized.herolanguage.tests\src-gen
3799 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  ipse.xtext.generator.LanguageConfig  - generating infrastructure for my.mavenized.HeroLanguage with fragments : ImplicitRuntimeFragment, ImplicitUiFragment, GrammarAccessFragment, EMFGeneratorFragment, SerializerFragment, ResourceFactoryFragment, XtextAntlrGeneratorFragment, ValidatorFragment, ImportNamespacesScopingFragment, QualifiedNamesFragment, BuilderIntegrationFragment, GeneratorFragment, FormatterFragment, LabelProviderFragment, OutlineTreeProviderFragment, QuickOutlineFragment, QuickfixProviderFragment, ContentAssistFragment, XtextAntlrUiGeneratorFragment, Junit4Fragment, RefactorElementNameFragment, TypesGeneratorFragment, XbaseGeneratorFragment, CodetemplatesGeneratorFragment, CompareFragment
5450 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  clipse.emf.mwe.utils.GenModelHelper  - Registered GenModel 'http://www.mavenized.my/HeroLanguage' from 'file:/D:/workspaces/zafin/github/my.mavenized.herolanguage/model/generated/HeroLanguage.genmodel'
13203 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] WARN  ing.ImportNamespacesScopingFragment  - Skipping stub generation as Xbase is used
16400 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  text.generator.junit.Junit4Fragment  - generating Junit4 Test support classes
16434 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  text.generator.junit.Junit4Fragment  - generating Compare Framework infrastructure
16508 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] ERROR g.eclipse.xtext.generator.Generator  - java.io.FileNotFoundException: ..\my.mavenized.herolanguage\META-INF\MANIFEST.MF (The system cannot find the path specified)
org.eclipse.emf.common.util.WrappedException: java.io.FileNotFoundException: ..\my.mavenized.herolanguage\META-INF\MANIFEST.MF (The system cannot find the path specified)
    at org.eclipse.xtext.generator.Generator.mergeManifest(Generator.java:423)
    at org.eclipse.xtext.generator.Generator.generateManifestRt(Generator.java:390)
    at org.eclipse.xtext.generator.Generator.invokeInternal(Generator.java:141)
    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:102)
    at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:62)
    at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:52)
    at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.run(Mwe2Launcher.java:74)
    at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main(Mwe2Launcher.java:35)
    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:597)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:297)
    at java.lang.Thread.run(Thread.java:662)
Caused by: java.io.FileNotFoundException: ..\my.mavenized.herolanguage\META-INF\MANIFEST.MF (The system cannot find the path specified)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(FileInputStream.java:120)
    at org.eclipse.xtext.generator.Generator.mergeManifest(Generator.java:409)
    ... 18 more
16510 [org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main()] INFO  .emf.mwe2.runtime.workflow.Workflow  - Done.
[INFO] 
[INFO] --- xtend-maven-plugin:2.5.0:compile (default) @ my.mavenized.herolanguage ---
[ERROR] 
ERROR:  HeroLanguageValidator.xtend - 
12: AbstractHeroLanguageValidator cannot be resolved to a type.
[ERROR] 
ERROR:  HeroLanguageValidator.xtend - 
12: Superclass must be a class
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] 
[INFO] parent ............................................ SUCCESS [0.195s]
[INFO] My Hero Language Core ............................. FAILURE [25.194s]
[INFO] My Hero Language UI ............................... SKIPPED
[INFO] My Hero Language Tests ............................ SKIPPED
[INFO] My Hero Language Feature .......................... SKIPPED
[INFO] My Hero Language Update Site ...................... SKIPPED
[INFO] example-project ................................... SKIPPED
[INFO] my.mavenized.herolanguage.module .................. SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
svenefftinge commented 10 years ago

this has been solved in 2.5.1. I've upgraded the version numbers.

vcottagiri commented 10 years ago

thanks!