From 1dbec3533021300b0a972dafde7e09b80e21da08 Mon Sep 17 00:00:00 2001 From: Stefan Oehme Date: Tue, 6 Oct 2015 10:50:00 +0200 Subject: [PATCH] [wizard] add generator dependencies for plain maven projects IDE integration for plain maven is not aware of dependencies that are only listed in the section. So to make the projects usable, we add the dependencies to the compile classpath. We mark them optional so they don't get pulled at runtime. --- .../xtext/xtext/wizard/ExternalDependency.xtend | 1 + .../eclipse/xtext/xtext/wizard/PomFile.xtend | 3 +++ .../xtext/wizard/RuntimeProjectDescriptor.xtend | 9 ++++----- .../org.xtext.example.full/pom.xml | 5 ----- .../org.xtext.example.mavenTycho/pom.xml | 5 ----- .../org.xtext.example.plainMaven/pom.xml | 17 ++++++++++++----- 6 files changed, 20 insertions(+), 20 deletions(-) diff --git a/plugins/org.eclipse.xtext.xtext.wizard/src/org/eclipse/xtext/xtext/wizard/ExternalDependency.xtend b/plugins/org.eclipse.xtext.xtext.wizard/src/org/eclipse/xtext/xtext/wizard/ExternalDependency.xtend index d566aad80..cf9459962 100644 --- a/plugins/org.eclipse.xtext.xtext.wizard/src/org/eclipse/xtext/xtext/wizard/ExternalDependency.xtend +++ b/plugins/org.eclipse.xtext.xtext.wizard/src/org/eclipse/xtext/xtext/wizard/ExternalDependency.xtend @@ -58,6 +58,7 @@ class ExternalDependency { version = parts.get(2) } Scope scope = Scope.COMPILE + boolean optional = false } @Accessors diff --git a/plugins/org.eclipse.xtext.xtext.wizard/src/org/eclipse/xtext/xtext/wizard/PomFile.xtend b/plugins/org.eclipse.xtext.xtext.wizard/src/org/eclipse/xtext/xtext/wizard/PomFile.xtend index db4e63088..134f22f46 100644 --- a/plugins/org.eclipse.xtext.xtext.wizard/src/org/eclipse/xtext/xtext/wizard/PomFile.xtend +++ b/plugins/org.eclipse.xtext.xtext.wizard/src/org/eclipse/xtext/xtext/wizard/PomFile.xtend @@ -56,6 +56,9 @@ class PomFile extends TextFile { «IF dep.scope != Scope.COMPILE» «dep.scope.mavenNotation» «ENDIF» + «IF dep.optional» + true + «ENDIF» «ENDFOR» diff --git a/plugins/org.eclipse.xtext.xtext.wizard/src/org/eclipse/xtext/xtext/wizard/RuntimeProjectDescriptor.xtend b/plugins/org.eclipse.xtext.xtext.wizard/src/org/eclipse/xtext/xtext/wizard/RuntimeProjectDescriptor.xtend index 2a3837e51..b0dad490b 100644 --- a/plugins/org.eclipse.xtext.xtext.wizard/src/org/eclipse/xtext/xtext/wizard/RuntimeProjectDescriptor.xtend +++ b/plugins/org.eclipse.xtext.xtext.wizard/src/org/eclipse/xtext/xtext/wizard/RuntimeProjectDescriptor.xtend @@ -70,6 +70,10 @@ class RuntimeProjectDescriptor extends TestedProjectDescriptor { deps += createBundleDependency("org.eclipse.emf.ecore.xcore") } } + if (!isEclipsePluginProject && config.needsMavenBuild) { + deps += createXtextDependency("org.eclipse.xtext.xtext") => [maven.optional = true] + deps += createXtextDependency("org.eclipse.xtext.xtext.generator") => [maven.optional = true] + } deps } @@ -454,11 +458,6 @@ class RuntimeProjectDescriptor extends TestedProjectDescriptor { org.eclipse.xtext.xtext.generator ${xtextVersion} - - org.eclipse.xtext - org.eclipse.xtext.xbase - ${xtextVersion} - diff --git a/tests/org.eclipse.xtext.tests/testdata/wizard-expectations/org.xtext.example.full/org.xtext.example.full.parent/org.xtext.example.full/pom.xml b/tests/org.eclipse.xtext.tests/testdata/wizard-expectations/org.xtext.example.full/org.xtext.example.full.parent/org.xtext.example.full/pom.xml index 3f74a98f0..654028060 100644 --- a/tests/org.eclipse.xtext.tests/testdata/wizard-expectations/org.xtext.example.full/org.xtext.example.full.parent/org.xtext.example.full/pom.xml +++ b/tests/org.eclipse.xtext.tests/testdata/wizard-expectations/org.xtext.example.full/org.xtext.example.full.parent/org.xtext.example.full/pom.xml @@ -44,11 +44,6 @@ org.eclipse.xtext.xtext.generator ${xtextVersion} - - org.eclipse.xtext - org.eclipse.xtext.xbase - ${xtextVersion} - diff --git a/tests/org.eclipse.xtext.tests/testdata/wizard-expectations/org.xtext.example.mavenTycho/org.xtext.example.mavenTycho.parent/org.xtext.example.mavenTycho/pom.xml b/tests/org.eclipse.xtext.tests/testdata/wizard-expectations/org.xtext.example.mavenTycho/org.xtext.example.mavenTycho.parent/org.xtext.example.mavenTycho/pom.xml index 67f0f5328..8bd546f89 100644 --- a/tests/org.eclipse.xtext.tests/testdata/wizard-expectations/org.xtext.example.mavenTycho/org.xtext.example.mavenTycho.parent/org.xtext.example.mavenTycho/pom.xml +++ b/tests/org.eclipse.xtext.tests/testdata/wizard-expectations/org.xtext.example.mavenTycho/org.xtext.example.mavenTycho.parent/org.xtext.example.mavenTycho/pom.xml @@ -44,11 +44,6 @@ org.eclipse.xtext.xtext.generator ${xtextVersion} - - org.eclipse.xtext - org.eclipse.xtext.xbase - ${xtextVersion} - diff --git a/tests/org.eclipse.xtext.tests/testdata/wizard-expectations/org.xtext.example.plainMaven/org.xtext.example.plainMaven.parent/org.xtext.example.plainMaven/pom.xml b/tests/org.eclipse.xtext.tests/testdata/wizard-expectations/org.xtext.example.plainMaven/org.xtext.example.plainMaven.parent/org.xtext.example.plainMaven/pom.xml index b1cbcbbfa..5b6c37cab 100644 --- a/tests/org.eclipse.xtext.tests/testdata/wizard-expectations/org.xtext.example.plainMaven/org.xtext.example.plainMaven.parent/org.xtext.example.plainMaven/pom.xml +++ b/tests/org.eclipse.xtext.tests/testdata/wizard-expectations/org.xtext.example.plainMaven/org.xtext.example.plainMaven.parent/org.xtext.example.plainMaven/pom.xml @@ -44,11 +44,6 @@ org.eclipse.xtext.xtext.generator ${xtextVersion} - - org.eclipse.xtext - org.eclipse.xtext.xbase - ${xtextVersion} - @@ -208,5 +203,17 @@ org.eclipse.xtext.xbase ${xtextVersion} + + org.eclipse.xtext + org.eclipse.xtext.xtext + ${xtextVersion} + true + + + org.eclipse.xtext + org.eclipse.xtext.xtext.generator + ${xtextVersion} + true +