[eclipse/xtext#1249] use bom for version management (#988)

This commit is contained in:
Sebastian Zarnekow 2019-01-11 16:41:50 +01:00 committed by GitHub
parent e866dc17fb
commit ecc7ae0bc3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
30 changed files with 268 additions and 88 deletions

View file

@ -10,6 +10,7 @@ buildscript {
repositories.jcenter()
dependencies {
classpath "org.xtext:xtext-gradle-plugin:$versions.xtext_gradle_plugin"
classpath "io.spring.gradle:dependency-management-plugin:$versions.dependency_management_plugin"
}
}
@ -27,6 +28,12 @@ subprojects {
version = rootProject.version
apply plugin: 'java'
apply plugin: 'io.spring.dependency-management'
dependencyManagement {
imports {
mavenBom "org.eclipse.xtext:xtext-dev-bom:$project.version"
}
}
if (findProperty('compileXtend') == 'true') {
apply plugin: 'org.xtext.xtend'
}

View file

@ -21,8 +21,6 @@ configurations {
eachDependency {
if (requested.group == 'org.eclipse.xtext' || requested.group == 'org.eclipse.xtend')
useVersion(versions.xtext_bootstrap)
if (requested.group == 'com.google.inject' && requested.name == 'guice')
useVersion(versions.guice)
}
}
exclude group: 'asm'

View file

@ -12,7 +12,7 @@ dependencies {
if (!name.endsWith('bootstrap')) {
mwe2Compile project(':org.eclipse.xtext.xtext.generator')
}
mwe2Runtime "org.eclipse.emf:org.eclipse.emf.mwe2.launch:$versions.emfMwe2"
mwe2Runtime 'org.eclipse.emf:org.eclipse.emf.mwe2.launch'
mwe2Runtime "org.eclipse.xtext:org.eclipse.xtext.common.types:$versions.xtext_bootstrap"
mwe2Runtime "org.eclipse.xtext:org.eclipse.xtext.ecore:$versions.xtext_bootstrap"
}

View file

@ -9,29 +9,5 @@ ext.versions = [
'xtext_bootstrap': '2.16.0',
'gradle_plugins': '0.1.0',
'xtext_gradle_plugin': '2.0.2',
// When adjusting the `lsp4j` version here, do not forget to do the followings:
// - Update the version in `IdeProjectDescriptor#pom`.
// - Update the test expectations by running `CliWizardIntegrationTest#main`.
// - Update the versions in the `/org.eclipse.xtext.ide/META-INF/MANIFEST.MF` and `/org.eclipse.xtext.ide.tests/META-INF/MANIFEST.MF` files.
'lsp4j': '0.6.0',
'log4j': '1.2.16',
'equinoxCommon' : '3.9.0',
'equinoxRegistry' : '3.7.0',
'eclipseCore': '3.13.0',
'eclipseOSGI' : '3.12.100',
'emfCommon': '2.12.0',
'emfEcore': '2.12.0',
'emfChange': '2.11.0',
'emfCodegen': '2.11.0',
'emfMwe': '1.3.21.201705291010',
'emfMwe2': '2.9.1.201705291010',
'jdtCore': '3.13.102',
'xpand': '2.0.0',
'guice': '3.0',
'antlr': '3.2',
'asm': '7.0',
'icu': '52.1',
'junit': '4.12',
'junit5': '5.1.0',
'args4j': '2.33'
'dependency_management_plugin' : '1.0.6.RELEASE'
]

View file

@ -5,9 +5,9 @@ dependencies {
compile project(':org.eclipse.xtext.testing')
compile project(':org.eclipse.xtext.testlanguages')
compile project(':org.eclipse.xtext.testlanguages.ide')
compile "junit:junit:$versions.junit"
compile "org.eclipse.lsp4j:org.eclipse.lsp4j:$versions.lsp4j"
compile "org.eclipse.emf:org.eclipse.emf.ecore.change:$versions.emfChange"
compile 'junit:junit'
compile 'org.eclipse.lsp4j:org.eclipse.lsp4j'
compile 'org.eclipse.emf:org.eclipse.emf.ecore.change'
}
sourceSets.test.java {

View file

@ -3,6 +3,6 @@ description = 'Platform-independent language support.'
dependencies {
compile project(':org.eclipse.xtext')
compile "org.eclipse.emf:org.eclipse.emf.ecore.change:$versions.emfChange"
compile "org.eclipse.lsp4j:org.eclipse.lsp4j:$versions.lsp4j"
compile 'org.eclipse.emf:org.eclipse.emf.ecore.change'
compile 'org.eclipse.lsp4j:org.eclipse.lsp4j'
}

View file

@ -4,10 +4,10 @@ description = 'Infrastructure for testing Xtext languages (supersedes org.eclips
dependencies {
compile project(':org.eclipse.xtext')
compile project(':org.eclipse.xtext.ide')
compile "org.eclipse.lsp4j:org.eclipse.lsp4j:$versions.lsp4j"
optional "junit:junit:$versions.junit"
optional "org.junit.jupiter:junit-jupiter-api:$versions.junit5"
optional "org.junit.jupiter:junit-jupiter-engine:$versions.junit5"
compile 'org.eclipse.lsp4j:org.eclipse.lsp4j'
optional 'junit:junit'
optional 'org.junit.jupiter:junit-jupiter-api'
optional 'org.junit.jupiter:junit-jupiter-engine'
}
sourceSets.test.java.srcDir 'tests'

View file

@ -3,11 +3,9 @@ apply from: "${rootDir}/gradle/mwe2-workflows.gradle"
dependencies {
compile project(':org.eclipse.xtext')
compile project(':org.eclipse.xtext.testing')
compile "org.eclipse.platform:org.eclipse.equinox.common:$versions.equinoxCommon"
compile("org.eclipse.platform:org.eclipse.core.runtime:$versions.eclipseCore") {
exclude group: "org.eclipse.platform", module: "org.eclipse.equinox.common"
}
compile "org.eclipse.emf:org.eclipse.emf.mwe2.runtime:$versions.emfMwe2"
compile 'org.eclipse.platform:org.eclipse.equinox.common'
compile 'org.eclipse.platform:org.eclipse.core.runtime'
compile 'org.eclipse.emf:org.eclipse.emf.mwe2.runtime'
}
// Include the mwe2 and xtext files from the main source set when executing the workflow

View file

@ -5,13 +5,13 @@ dependencies {
compile project(':org.eclipse.xtext.xtext.generator')
compile project(':org.eclipse.xtext.xtext.wizard')
compile project(':org.eclipse.xtext.testlanguages')
compile "junit:junit:$versions.junit"
compile "org.eclipse.emf:org.eclipse.emf.common:$versions.emfCommon"
compile "org.eclipse.emf:org.eclipse.emf.ecore.xmi:$versions.emfEcore"
compile 'junit:junit'
compile 'org.eclipse.emf:org.eclipse.emf.common'
compile 'org.eclipse.emf:org.eclipse.emf.ecore.xmi'
optional files('lib/simple.jar')
// The MWE2 workflow depends on emf-gen, so we have to include it in the test dependencies
testCompile sourceSets.mwe2.output
testCompile "args4j:args4j:$versions.args4j"
testCompile 'args4j:args4j'
}
sourceSets.test {

View file

@ -4,6 +4,7 @@ buildscript {
}
dependencies {
classpath 'org.xtext:xtext-gradle-plugin:2.0.2'
classpath 'io.spring.gradle:dependency-management-plugin:1.0.6.RELEASE'
}
}
@ -14,6 +15,12 @@ subprojects {
}
apply plugin: 'java'
apply plugin: 'io.spring.dependency-management'
dependencyManagement {
imports {
mavenBom "org.eclipse.xtext:xtext-dev-bom:unspecified"
}
}
apply plugin: 'org.xtext.xtend'
apply from: "${rootDir}/gradle/source-layout.gradle"
apply from: "${rootDir}/gradle/maven-deployment.gradle"

View file

@ -28,6 +28,17 @@
<module>org.xtext.example.full.repository</module>
<module>org.xtext.example.full.ui.tests</module>
</modules>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.eclipse.xtext</groupId>
<artifactId>xtext-dev-bom</artifactId>
<version>${xtextVersion}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>

View file

@ -4,6 +4,7 @@ buildscript {
}
dependencies {
classpath 'org.xtext:xtext-gradle-plugin:2.0.2'
classpath 'io.spring.gradle:dependency-management-plugin:1.0.6.RELEASE'
}
}
@ -14,6 +15,12 @@ subprojects {
}
apply plugin: 'java'
apply plugin: 'io.spring.dependency-management'
dependencyManagement {
imports {
mavenBom "org.eclipse.xtext:xtext-dev-bom:unspecified"
}
}
apply plugin: 'org.xtext.xtend'
apply from: "${rootDir}/gradle/source-layout.gradle"
apply from: "${rootDir}/gradle/maven-deployment.gradle"

View file

@ -4,6 +4,7 @@ buildscript {
}
dependencies {
classpath 'org.xtext:xtext-gradle-plugin:2.0.2'
classpath 'io.spring.gradle:dependency-management-plugin:1.0.6.RELEASE'
}
}
@ -14,6 +15,12 @@ subprojects {
}
apply plugin: 'java'
apply plugin: 'io.spring.dependency-management'
dependencyManagement {
imports {
mavenBom "org.eclipse.xtext:xtext-dev-bom:unspecified"
}
}
apply plugin: 'org.xtext.xtend'
apply from: "${rootDir}/gradle/source-layout.gradle"
apply from: "${rootDir}/gradle/maven-deployment.gradle"

View file

@ -4,6 +4,7 @@ buildscript {
}
dependencies {
classpath 'org.xtext:xtext-gradle-plugin:2.0.2'
classpath 'io.spring.gradle:dependency-management-plugin:1.0.6.RELEASE'
}
}
@ -14,6 +15,12 @@ subprojects {
}
apply plugin: 'java'
apply plugin: 'io.spring.dependency-management'
dependencyManagement {
imports {
mavenBom "org.eclipse.xtext:xtext-dev-bom:unspecified"
}
}
apply plugin: 'org.xtext.xtend'
apply from: "${rootDir}/gradle/source-layout.gradle"
apply from: "${rootDir}/gradle/maven-deployment.gradle"

View file

@ -16,6 +16,17 @@
<module>org.xtext.example.lsMavenApp</module>
<module>org.xtext.example.lsMavenApp.ide</module>
</modules>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.eclipse.xtext</groupId>
<artifactId>xtext-dev-bom</artifactId>
<version>${xtextVersion}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<pluginManagement>
<plugins>

View file

@ -16,6 +16,17 @@
<module>org.xtext.example.lsMavenFatjar</module>
<module>org.xtext.example.lsMavenFatjar.ide</module>
</modules>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.eclipse.xtext</groupId>
<artifactId>xtext-dev-bom</artifactId>
<version>${xtextVersion}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<pluginManagement>
<plugins>

View file

@ -25,6 +25,17 @@
<module>org.xtext.example.lsMavenTychoApp.ui</module>
<module>org.xtext.example.lsMavenTychoApp.target</module>
</modules>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.eclipse.xtext</groupId>
<artifactId>xtext-dev-bom</artifactId>
<version>${xtextVersion}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>

View file

@ -25,6 +25,17 @@
<module>org.xtext.example.lsMavenTychoFatjar.ui</module>
<module>org.xtext.example.lsMavenTychoFatjar.target</module>
</modules>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.eclipse.xtext</groupId>
<artifactId>xtext-dev-bom</artifactId>
<version>${xtextVersion}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>

View file

@ -28,6 +28,17 @@
<module>org.xtext.example.mavenTycho.tests</module>
<module>org.xtext.example.mavenTycho.ui.tests</module>
</modules>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.eclipse.xtext</groupId>
<artifactId>xtext-dev-bom</artifactId>
<version>${xtextVersion}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>

View file

@ -28,6 +28,17 @@
<module>org.xtext.example.mavenTychoJ9.tests</module>
<module>org.xtext.example.mavenTychoJ9.ui.tests</module>
</modules>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.eclipse.xtext</groupId>
<artifactId>xtext-dev-bom</artifactId>
<version>${xtextVersion}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>

View file

@ -30,6 +30,17 @@
<module>org.xtext.example.mavenTychoP2.tests</module>
<module>org.xtext.example.mavenTychoP2.ui.tests</module>
</modules>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.eclipse.xtext</groupId>
<artifactId>xtext-dev-bom</artifactId>
<version>${xtextVersion}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>

View file

@ -17,6 +17,17 @@
<module>org.xtext.example.plainMaven.ide</module>
<module>org.xtext.example.plainMaven.web</module>
</modules>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.eclipse.xtext</groupId>
<artifactId>xtext-dev-bom</artifactId>
<version>${xtextVersion}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<pluginManagement>
<plugins>

View file

@ -3,10 +3,10 @@ description = 'Utility classes used throughout Xtext.'
dependencies {
compile "org.eclipse.xtend:org.eclipse.xtend.lib:$versions.xtext"
compile "log4j:log4j:$versions.log4j"
compile "org.eclipse.emf:org.eclipse.emf.common:$versions.emfCommon"
compile "org.eclipse.emf:org.eclipse.emf.ecore:$versions.emfEcore"
compile "com.google.inject:guice:$versions.guice"
compile 'log4j:log4j'
compile 'org.eclipse.emf:org.eclipse.emf.common'
compile 'org.eclipse.emf:org.eclipse.emf.ecore'
compile 'com.google.inject:guice'
}
// Set the value of the Maven-Version attribute

View file

@ -3,17 +3,12 @@ description = 'Generator for infrastructure of Xtext languages (supersedes org.e
dependencies {
compile project(':org.eclipse.xtext')
compile "org.eclipse.emf:org.eclipse.emf.codegen:$versions.emfCodegen"
compile "org.eclipse.emf:org.eclipse.emf.codegen.ecore:$versions.emfEcore"
compile "org.eclipse.emf:org.eclipse.emf.mwe.utils:$versions.emfMwe"
compile "org.eclipse.emf:org.eclipse.emf.mwe2.lib:$versions.emfMwe2"
compile "com.ibm.icu:icu4j:$versions.icu"
compile "org.eclipse.platform:org.eclipse.equinox.common:$versions.equinoxCommon"
optional("org.eclipse.platform:org.eclipse.core.runtime:$versions.eclipseCore") {
exclude group: "org.eclipse.platform", module: "org.eclipse.equinox.common"
}
optional("org.eclipse.jdt:org.eclipse.jdt.core:$versions.jdtCore") {
exclude group: "org.eclipse.platform", module: "org.eclipse.equinox.common"
exclude group: "org.eclipse.platform", module: "org.eclipse.core.runtime"
}
compile 'org.eclipse.emf:org.eclipse.emf.codegen'
compile 'org.eclipse.emf:org.eclipse.emf.codegen.ecore'
compile 'org.eclipse.emf:org.eclipse.emf.mwe.utils'
compile 'org.eclipse.emf:org.eclipse.emf.mwe2.lib'
compile 'com.ibm.icu:icu4j'
compile 'org.eclipse.platform:org.eclipse.equinox.common'
optional 'org.eclipse.platform:org.eclipse.core.runtime'
optional 'org.eclipse.jdt:org.eclipse.jdt.core'
}

View file

@ -3,7 +3,7 @@ description = 'Platform-independent component for creating new Xtext projects.'
dependencies {
compile project(':org.eclipse.xtext')
optional "args4j:args4j:$versions.args4j"
optional 'args4j:args4j'
}
sourceSets.main.resources.srcDir 'resources'

View file

@ -85,6 +85,7 @@ class ParentProjectDescriptor extends ProjectDescriptor {
}
dependencies {
classpath 'org.xtext:xtext-gradle-plugin:«config.xtextVersion.xtextGradlePluginVersion»'
classpath 'io.spring.gradle:dependency-management-plugin:1.0.6.RELEASE'
}
}
@ -100,6 +101,12 @@ class ParentProjectDescriptor extends ProjectDescriptor {
}
apply plugin: 'java'
apply plugin: 'io.spring.dependency-management'
dependencyManagement {
imports {
mavenBom "org.eclipse.xtext:xtext-dev-bom:«config.xtextVersion»"
}
}
apply plugin: 'org.xtext.xtend'
apply from: "${rootDir}/gradle/source-layout.gradle"
apply from: "${rootDir}/gradle/maven-deployment.gradle"
@ -228,6 +235,17 @@ class ParentProjectDescriptor extends ProjectDescriptor {
<module>«IF config.projectLayout == ProjectLayout.FLAT»../«ENDIF»«p.name»</module>
«ENDFOR»
</modules>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.eclipse.xtext</groupId>
<artifactId>xtext-dev-bom</artifactId>
<version>${xtextVersion}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
«IF config.needsTychoBuild»
<plugins>

View file

@ -54,7 +54,9 @@ class PomFile extends TextFile {
<dependency>
<groupId>«dep.groupId»</groupId>
<artifactId>«dep.artifactId»</artifactId>
«IF dep.version !== null»
<version>«dep.version»</version>
«ENDIF»
«IF dep.scope != Scope.COMPILE»
<scope>«dep.scope.mavenNotation»</scope>
«ENDIF»

View file

@ -153,6 +153,9 @@ public class ParentProjectDescriptor extends ProjectDescriptor {
_builder.append(_xtextGradlePluginVersion, "\t\t");
_builder.append("\'");
_builder.newLineIfNotEmpty();
_builder.append("\t\t");
_builder.append("classpath \'io.spring.gradle:dependency-management-plugin:1.0.6.RELEASE\'");
_builder.newLine();
_builder.append("\t");
_builder.append("}");
_builder.newLine();
@ -197,6 +200,27 @@ public class ParentProjectDescriptor extends ProjectDescriptor {
_builder.append("apply plugin: \'java\'");
_builder.newLine();
_builder.append("\t");
_builder.append("apply plugin: \'io.spring.dependency-management\'");
_builder.newLine();
_builder.append("\t");
_builder.append("dependencyManagement {");
_builder.newLine();
_builder.append("\t\t");
_builder.append("imports {");
_builder.newLine();
_builder.append("\t\t\t");
_builder.append("mavenBom \"org.eclipse.xtext:xtext-dev-bom:");
XtextVersion _xtextVersion_1 = this.getConfig().getXtextVersion();
_builder.append(_xtextVersion_1, "\t\t\t");
_builder.append("\"");
_builder.newLineIfNotEmpty();
_builder.append("\t\t");
_builder.append("}");
_builder.newLine();
_builder.append("\t");
_builder.append("}");
_builder.newLine();
_builder.append("\t");
_builder.append("apply plugin: \'org.xtext.xtend\'");
_builder.newLine();
_builder.append("\t");
@ -634,6 +658,37 @@ public class ParentProjectDescriptor extends ProjectDescriptor {
}
_builder.append("</modules>");
_builder.newLine();
_builder.append("<dependencyManagement>");
_builder.newLine();
_builder.append("\t");
_builder.append("<dependencies>");
_builder.newLine();
_builder.append("\t\t");
_builder.append("<dependency>");
_builder.newLine();
_builder.append("\t\t\t");
_builder.append("<groupId>org.eclipse.xtext</groupId>");
_builder.newLine();
_builder.append("\t\t\t");
_builder.append("<artifactId>xtext-dev-bom</artifactId>");
_builder.newLine();
_builder.append("\t\t\t");
_builder.append("<version>${xtextVersion}</version>");
_builder.newLine();
_builder.append("\t\t\t");
_builder.append("<type>pom</type>");
_builder.newLine();
_builder.append("\t\t\t");
_builder.append("<scope>import</scope>");
_builder.newLine();
_builder.append("\t\t");
_builder.append("</dependency>");
_builder.newLine();
_builder.append("\t");
_builder.append("</dependencies>");
_builder.newLine();
_builder.append("</dependencyManagement>");
_builder.newLine();
_builder.append("<build>");
_builder.newLine();
{

View file

@ -186,14 +186,20 @@ public class PomFile extends TextFile {
_builder.append(_artifactId, "\t\t\t");
_builder.append("</artifactId>");
_builder.newLineIfNotEmpty();
{
String _version = dep.getVersion();
boolean _tripleNotEquals = (_version != null);
if (_tripleNotEquals) {
_builder.append("\t");
_builder.append("\t");
_builder.append("\t");
_builder.append("<version>");
String _version = dep.getVersion();
_builder.append(_version, "\t\t\t");
String _version_1 = dep.getVersion();
_builder.append(_version_1, "\t\t\t");
_builder.append("</version>");
_builder.newLineIfNotEmpty();
}
}
{
Scope _scope = dep.getScope();
boolean _notEquals_1 = (!Objects.equal(_scope, Scope.COMPILE));

View file

@ -4,22 +4,20 @@ description = 'Core component of Xtext.'
dependencies {
compile project(':org.eclipse.xtext.util')
compile "org.eclipse.xtend:org.eclipse.xtend.lib:$versions.xtext"
compile "log4j:log4j:$versions.log4j"
compile "org.eclipse.platform:org.eclipse.equinox.common:$versions.equinoxCommon"
compile 'log4j:log4j'
compile 'org.eclipse.platform:org.eclipse.equinox.common'
// remove me, once the following is fixed : https://bugs.eclipse.org/bugs/show_bug.cgi?id=510504
compile "org.eclipse.platform:org.eclipse.osgi:$versions.eclipseOSGI"
compile "org.eclipse.emf:org.eclipse.emf.common:$versions.emfCommon"
compile "org.eclipse.emf:org.eclipse.emf.ecore.xmi:$versions.emfEcore"
compile "com.google.inject:guice:$versions.guice"
compile "org.antlr:antlr-runtime:$versions.antlr"
optional("org.eclipse.platform:org.eclipse.core.runtime:$versions.eclipseCore") {
exclude group: "org.eclipse.platform", module: "org.eclipse.equinox.common"
}
optional "org.eclipse.platform:org.eclipse.equinox.registry:$versions.equinoxRegistry"
optional "org.eclipse.emf:org.eclipse.emf.mwe.utils:$versions.emfMwe"
optional "org.eclipse.xpand:org.eclipse.xtend:$versions.xpand"
optional "org.eclipse.xpand:org.eclipse.xtend.typesystem.emf:$versions.xpand"
optional "org.ow2.asm:asm-commons:$versions.asm"
compile 'org.eclipse.platform:org.eclipse.osgi'
compile 'org.eclipse.emf:org.eclipse.emf.common'
compile 'org.eclipse.emf:org.eclipse.emf.ecore.xmi'
compile 'com.google.inject:guice'
compile 'org.antlr:antlr-runtime'
optional 'org.eclipse.platform:org.eclipse.core.runtime'
optional 'org.eclipse.platform:org.eclipse.equinox.registry'
optional 'org.eclipse.emf:org.eclipse.emf.mwe.utils'
optional 'org.eclipse.xpand:org.eclipse.xtend'
optional 'org.eclipse.xpand:org.eclipse.xtend.typesystem.emf'
optional 'org.ow2.asm:asm-commons'
}
sourceSets.main {