/sling-org-apache-sling-starter

Apache Sling Starter Application

Primary LanguageJavaApache License 2.0Apache-2.0

Apache Sling

Build Status Sonarcloud Status JavaDoc Maven Central License

Apache Sling Starter

This module is part of the Apache Sling project.

The starter project produces feature artifacts that can be launched using the Feature Launcher.

It is not meant to be a production-ready setup, more as a way to facilitate experimenting and learning Sling.

See Releasing a new version of the Sling starter for how to create a release of this module.

How to run the Sling Starter module in Standalone mode

NOTE: "mvn clean" deletes the "launcher" work directory in the project base directory. It is advisable to use a work directory outside of the project directory.

  1. Build the Sling Starter using

    mvn clean install

in the current directory.

  1. Start Sling backed by an Oak SegmentStore with

    java -jar target/dependency/org.apache.sling.feature.launcher.jar -f target/slingfeature-tmp/feature-oak_tar.json

  2. Browse Sling in:

     http://localhost:8080
    

For MongoDB support replace the launch command with

java -jar target/dependency/org.apache.sling.feature.launcher.jar -f target/slingfeature-tmp/feature-oak_mongo.json

This expects a MongoDB server to be running, search for mongodb:// in the feature files for the expected URL (currently mongodb://localhost:27017).

Extending the Sling Starter

If you wish the extend the Sling Starter but would like to keep various application-level features out, you can start with the nosample_base aggregate, which contains:

  • all the base features
  • Oak base features, without the NodeStore setup
  • No applications ( Composum, Slingshot, etc )

For instance, launching an empty Sling Starter with segment persistence can be achieved by running

java -jar target/dependency/org.apache.sling.feature.launcher.jar -f target/slingfeature-tmp/feature-nosample_base.json,target/slingfeature-tmp/feature-oak_persistence_sns.json

Your own feature files can be added to the feature list.

Helper scripts

The scripts directory contains helper scripts that will aid with local development by simplifying the use of tools external to the Sling Starter.