Giter VIP home page Giter VIP logo

maven-xtext-example's Introduction

Build Status

An Xtext Language Built with Maven

A small example to show how to configure a Maven build for an Xtext language and how to use it from Maven and Gradle.

Language Build

If you use Xtext 2.9 or higher, the Maven build for your language is auto-generated. Just skip ahead to the usage section.

  • see my.mavenized.herolanguage.* projects
  • Language plug-ins, updatesite and Eclipse feature built via Maven/Tycho
  • Xtext Code Generation (Language infrastructure generated from grammar)
  • Xtend Code Generation

Language Usage

  • example-project
  • example-project-gradle
  • Example Language (herolanguage) Code Generation
  • Xtend Code Generation

Try it out!

Steps

1. Increase memory

   export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=256m"

2. Build the language

 mvn clean install

3. Build the example projects

 cd ../example-project/
 mvn clean install
 cd ../example-project-gradle/
 ./gradlew build

Builds

We now have automatic builds:

https://github.com/xtext/maven-xtext-example/actions?query=workflow%3ABuild

Maven Archetype

There is also a Maven Archetype available that automatically creates your new project based on this example: https://github.com/fuinorg/emt-xtext-archetype

Known Issues

1. Build fails due to version conflicts

The build will fail immediately because of version conflicts. A possible error might look similar to the following:

  • No versions available for org.eclipse.emf:org.eclipse.emf.mwe2.runtime:jar:[2.9.1.201705291010] within specified range

Even if the specified version (see pom) is available on the central maven repository, updating related snapshots will most likely help the problem.

  • mvn clean install -U

maven-xtext-example's People

Contributors

arnedeutsch avatar cdietrich avatar dependabot[bot] avatar dhuebner avatar holgerschill avatar michael-schnell avatar oehme avatar schubmat avatar svenefftinge avatar tjuerge avatar vorburger avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.