| configurations { |
| epsilon |
| } |
| |
| repositories { |
| maven { |
| url "https://repo.eclipse.org/content/repositories/acceleo-releases/" |
| } |
| maven { |
| url "https://oss.sonatype.org/content/repositories/snapshots" |
| } |
| mavenCentral() |
| } |
| |
| dependencies { |
| epsilon('org.eclipse.epsilon:org.eclipse.epsilon.emc.uml:2.3.0-SNAPSHOT') { |
| // UML2 is broken on Maven Central |
| exclude group: 'org.eclipse.uml2' |
| } |
| epsilon 'org.eclipse.epsilon:org.eclipse.epsilon.workflow:2.3.0-SNAPSHOT' |
| |
| // Fetch the UML2 dependencies from repo.eclipse.org instead |
| epsilon 'org.eclipse.uml2:org.eclipse.uml2.uml:5.0.1.v20140910-1354' |
| epsilon 'org.eclipse.uml2:org.eclipse.uml2.common:2.0.1.v20140910-1354' |
| epsilon 'org.eclipse.uml2:org.eclipse.uml2.types:2.0.0.v20140910-1354' |
| } |
| |
| task setupEpsilonTasks { |
| |
| // Set up the core Epsilon tasks |
| ant.taskdef(resource: 'org/eclipse/epsilon/workflow/tasks/tasks.xml', |
| classpath: configurations.epsilon.asPath, loaderref: 'epsilon') |
| |
| // Set logging level to info so that EOL's println() is not suppressed |
| ant.lifecycleLogLevel = 'INFO' |
| } |
| |
| task run { |
| dependsOn tasks.setupEpsilonTasks |
| |
| // Load a UML model from model.uml |
| ant.'epsilon.loadModel'(name: 'UML', impl: 'org.eclipse.epsilon.emc.uml.UmlModel'){ |
| parameter(name: 'modelFile', file: 'model.uml') |
| } |
| |
| // Run library.eol against it |
| ant.'epsilon.eol'(src: 'uml.eol'){ model(ref: 'UML') } |
| |
| } |