The 5.7 branch of Magnolia reached End-of-Life on December 31, 2023, as specified in our End-of-life policy. This means the 5.7 branch is no longer maintained or supported. Please upgrade to the latest Magnolia release. By upgrading, you will get the latest release of Magnolia featuring significant improvements to the author and developer experience. For a successful upgrade, please consult our Magnolia 6.2 documentation. If you need help, please contact info@magnolia-cms.com.

Back up your system before installing a module. Uninstalling a module is not always as simple as removing the file. Modules can add and change configuration in the repository. They may also change content. You should try the module in a test environment first. A module is responsible for updating itself across versions. Keep only one version of each module and its dependencies.

Folders and ZIP files

Choose this option if the module is delivered as a folder or a ZIP file. This type of module is configured completely on the file system.

  1. Copy the folder or extract the ZIP into the magnolia.resources.dir directory.
  2. Magnolia scans the directory periodically and registers the module. It also detects new and modified templates, dialogs and resources.

magnolia.resources.dir is a property defining the directory from which resources are loaded in a Magnolia instance. This directory is used for file-based resources such as light modules and for overriding classpath resources. The property is configured in WEB-INF/config/default/magnolia.properties and has the default value $magnolia.home/modules. To see the current value of the property, go to the Config Info tab in the About Magnolia app.
(info) You can use symbolic links (a.k.a symlinks or soft links) in the resources directory to include light modules located elsewhere on your system.

JAR files

Choose this option if the module is delivered as a JAR file. All modules provided by Magnolia International are JAR files.

  1. Stop Magnolia.
  2. Copy the JAR files into the WEB-INF/lib directory.
    • Tomcat: /webapps/<contextPath>/WEB-INF/lib
    • JBoss: /server/default/deploy/<contextPath>/WEB-INF/lib
  3. Start Magnolia.
  4. Open a browser and go to Magnolia AdminCentral
  5. Run the Web update.

Maven dependencies

Choose this option if you have your own bundle. Using Maven to manage module dependencies is a best practice.

  1. Add a dependency element including the module version number in your bundle's parent POM:

    Bundle parent pom.xml
    <project>
      <dependencyManagement>
        <dependencies>
          <dependency>
            <groupId><!-- groupId --></groupId>
            <artifactId><!-- artifactId --></artifactId>
            <version><!-- version --></version>
          </dependency>
        </dependencies>
      </dependencyManagement>
    </project>
  2. Add a dependency element without the version number in the Magnolia webapp POM, typically inside the parent project:

    Webapp pom.xml
    <project>
      <dependencies>
        <dependency>
          <groupId><!-- groupId --></groupId>
          <artifactId><!-- artifactId --></artifactId>
        </dependency>
      </dependencies>
    </project>