Copyright 2016 Avaloq Group AG
The DDK p2 update site is published to GitHub Pages and can be used directly in Eclipse target platform definitions or as a p2 repository URL.
Browse available releases and snapshots: dsldevkit.github.io/dsl-devkit/ Note: subdirectory URLs (e.g.
/p2/releases/latest/) are for Eclipse only and return 404 in a browser.
Use a pinned release URL for reproducible builds:
jar:https://github.com/dsldevkit/dsl-devkit/releases/download/v<version>/p2-update-site.zip!/repository
For example, for version v17.3.2:
jar:https://github.com/dsldevkit/dsl-devkit/releases/download/v17.3.2/p2-update-site.zip!/repository
Alternatively, use the GitHub Pages p2 repository directly (no zip unwrapping needed):
https://dsldevkit.github.io/dsl-devkit/p2/releases/v17.3.2/
Or always point to the latest release:
https://dsldevkit.github.io/dsl-devkit/p2/releases/latest/
To use the latest snapshot from the master branch:
https://dsldevkit.github.io/dsl-devkit/p2/snapshots/latest/
To pin a specific snapshot by commit SHA (first 8 characters):
https://dsldevkit.github.io/dsl-devkit/p2/snapshots/<sha>/
You can find more detailed documentation and examples at ddk.tools.avaloq.com.
- Take Eclipse IDE for Java Developers (i.e. 2022-12)
- Install Xtext SDK 2.31 (currenlty DDK is based on Xtext 2.31)
- There is no public update site for DDK yet, so
- import all plugins from this repository into a new Eclipse workspace
- change current target to ddk.target
- compile and export the four features available in the workspace (runtime, and the DDK itself)
- Install the exported features into your Eclipse
| Plugin | Description |
|---|---|
| com.avaloq.tools.ddk.workflow | Mwe2 workflows to regenerate DDK languages |
| com.avaloq.tools.ddk.xtext.generator | Mwe2 workflow fragements for generating DSL implementation |
| com.avaloq.tools.ddk.xtext | Extensions to Xtext runtime library |
| com.avaloq.tools.ddk.xtext.common.* | Optional extensions to Xtext runtime library |
| com.avaloq.tools.ddk.xtext.ui | Eclipse UI part of runtime library extensions |
| com.avaloq.tools.ddk.xtext.builder | Extensions to Xtext builder |
| com.avaloq.tools.ddk.xtext.format.* | Format DSL |
| com.avaloq.tools.ddk.xtext.check.* | Check DSL |
| com.avaloq.tools.ddk.xtext.checkcfg.* | Check Configuration DSL |
| com.avaloq.tools.ddk.xtext.scope.* | Scope DSL |
| com.avaloq.tools.ddk.xtext.export.* | Export DSL |
| com.avaloq.tools.ddk.xtext.valid.* | obsolete and is replaced by Check DSL |
| com.avaloq.tools.ddk.typesystem | Basics for building a typesystem for a DSL |
| com.avaloq.tools.ddk.test.* | Support for writing tests for DSLs |
| com.avaloq.tools.ddk.xtextspy.* | View to support debugging a DSL |
| Feature | Description |
|---|---|
| com.avaloq.tools.ddk.runtime.feature | Runtime extension to Xtext |
| com.avaloq.tools.ddk.feature | Toolkit to install into Eclipse on top of Xtext for DSL development |
DSL Developer Kit is an extension layer to Xtext built for active Xtext users. It extends Xtext runtime to handle more sophisticated cases in DSL design, to support scaling for larger models and better monitoring and recovery in headless frameworks based on Xtext. DDK comes with a few handy small DSLs helping to standardize implementations of tools for DSLs. Read the introduction.