Skip to content

Development Setup

Set up your development environment for contributing to the Dataspace Ecosystem.

IDE Setup

You can use any IDE that supports Java development. Below we provide setup instructions for IntelliJ IDEA and VS Code as examples, but feel free to use whichever IDE you are most comfortable with.

IntelliJ IDEA

  1. Import Project
  2. Open IntelliJ IDEA
  3. Select "Open" and choose the project root
  4. Wait for Gradle sync to complete

  5. Configure SDK

  6. Go to File > Project Structure > Project
  7. Set SDK to JDK 17+
  8. Set Language Level to 17

VS Code

  1. Install Extensions
  2. Install the Java Extension Pack (includes Language Support for Java, Debugger for Java, and Gradle for Java)
  3. Install the Gradle for Java extension if not already included

  4. Open Project

  5. Open VS Code
  6. Select File > Open Folder... and choose the project root
  7. Wait for the Java Language Server to initialize and Gradle sync to complete

  8. Configure JDK

  9. Open Settings (Ctrl+, / Cmd+,)
  10. Search for java.configuration.runtimes
  11. Add an entry pointing to your JDK 17+ installation
  12. Alternatively, set java.jdt.ls.java.home in settings.json:

    {
      "java.jdt.ls.java.home": "/path/to/jdk-17"
    }
    

Build System

Basic Gradle Commands

For basic build commands (full build, building without tests, clean build, etc.), refer to the Quick Start Guide.

Development-Specific Commands

# Build specific module
./gradlew :core:common:build

# Run specific launcher
./gradlew :launchers:control-plane:control-plane-launcher:run

Running Locally

Full Dataspace Deployment

For deploying a complete dataspace environment with multiple participants, see the Testing Guide which covers: - Building Docker/Podman images - Loading images into Kind clusters - Deploying with Terraform

System Tests (End-to-End)

For end-to-end testing with a full dataspace deployment, see Quick Start - Step 5: Run End-to-End Tests.

This includes: - Setting up port forwarding - Running system tests: ./gradlew :system-tests:runner:test -DincludeTags="EndToEndTest" - Requirements for the deployed dataspace

One-Time Execution

End-to-end tests can only run once per deployment. Destroy and redeploy the dataspace to rerun them.

See Also