Prerequisites

The lowest supported JDK version is 8.

All of the ScaleOut JARs are available on the ScaleOut Repository.

Connecting to the ScaleOut Repository

The ScaleOut repository is hosted in a Sonatype Nexus Repository at:

https://packages.scaleoutsoftware.com/repository/scaleout-release/

Configure your build system using one of the following examples. For complete documentation on connecting to the ScaleOut repository, see the JavaProjectConfigurationGuide.

sync

maven

Add the ScaleOut release repository to the project’s pom.xml:

<repositories>
    <repository>
        <id>scaleout-release</id>
        <name>ScaleOut Release Repository</name>
        <url>https://packages.scaleoutsoftware.com/repository/scaleout-release/</url>

        <releases>
            <enabled>true</enabled>
        </releases>
    </repository>
</repositories>

Dependencies stored in the repository can then be referenced normally.

For example:

<dependency>
    <groupId>com.scaleoutsoftware</groupId>
    <artifactId>scaleout-client</artifactId>
    <version>3.2.4</version>
</dependency>

Maven will retrieve the artifact from the configured ScaleOut repository when the project is built.

Configuring Maven Globally

The repository can also be configured in the user’s Maven settings.xml file.

Note

Configuring Maven globally to connect to the ScaleOut repository is preferred when Maven will be used to generate ScaleOut archetypes.

On Linux and macOS, the file is normally located at:

~/.m2/settings.xml

On Windows, it is normally located at:

%USERPROFILE%\.m2\settings.xml

Add a profile containing the ScaleOut repository:

<settings>
    <profiles>
        <profile>
            <id>scaleout</id>

            <repositories>
                <repository>
                    <id>scaleout-release</id>
                    <name>ScaleOut Release Repository</name>
                    <url>https://packages.scaleoutsoftware.com/repository/scaleout-release/</url>

                    <releases>
                        <enabled>true</enabled>
                    </releases>
                </repository>
            </repositories>
        </profile>
    </profiles>

    <activeProfiles>
        <activeProfile>scaleout</activeProfile>
    </activeProfiles>
</settings>

This configuration makes the ScaleOut release repository available to all Maven projects run by the user.

Referencing the API JARs

You can acquire the ScaleOut DigitalTwin Builder JARs in one of two ways:

  1. Reference the DigitalTwin builder JARs from your project.

  2. Download the required JARs from the ScaleOut repository and locally reference them from your project.

sync

maven

<dependencies>
        <!-- ... -->
        <!-- your dependencies -->
        <!-- ... -->
        <!-- the digital twin hosting library, used for creating simulation and real-time digital twins -->
        <dependency>
                <groupId>com.scaleoutsoftware.modules</groupId>
                <artifactId>modules-hosting</artifactId>
                <version>3.1.4</version>
        </dependency>
        <!-- the digital twin development library, used for testing simulation and real-time digital twins on the Workbench -->
        <dependency>
                <groupId>com.scaleoutsoftware.digitaltwin</groupId>
                <artifactId>digitaltwin-development</artifactId>
                <version>3.1.4</version>
        </dependency>
</dependencies>