Skip to content

About

Plain gradle repository to download and publish new MPS versions

Topics

Resources

Code of conduct

Stars

2 stars

Watchers

20 watching

Forks

Repository files navigation

build.publish.mps

artifacts.itemis.cloud

This repository contains a Gradle script for publishing MPS and some of its jars to the itemis Nexus and GitHub Packages. You can use these dependencies, for example, in a Gradle or Maven build script.

Publishing is done on itemis TeamCity by manually triggering the Update MPS build configuration, passing the version to publish as a parameter.

Example usage: model checker of mps-gradle-plugin

The following artifacts are published:

MPS generic zip:

  • com.jetbrains.mps: if a jar file (below) is not published, you can still extract it from this full zip file.

Individual JAR files:

  • com.jetbrains.mps-core
  • com.jetbrains.mps-editor
  • com.jetbrains.mps-editor-api
  • com.jetbrains.mps-editor-runtime
  • com.jetbrains.mps-openapi
  • com.jetbrains.mps-tool
  • com.jetbrains.mps-run
  • com.jetbrains.mps-environment
  • com.jetbrains.mps-platform
  • com.jetbrains.util
  • com.jetbrains.mps-console-ide-commands-runtime
  • com.jetbrains.mps-messaging
  • com.jetbrains.mps-modelchecker
  • com.jetbrains.mps-httpsupport-runtime
  • com.jetbrains.mps-project-check
  • com.jetbrains.mps-workbench
  • com.jetbrains.annotations

JetBrains Runtime (JBR) marker POM:

  • com.jetbrains.mps:mps-jbr: a dependency-only POM whose single dependency is the version of com.jetbrains.jdk:jbr_jcef (the JetBrains Runtime) that this MPS version is built with. The version is derived from the mps.runtimeBuild property in the distribution's build.properties.

This marker can be used with the jbr-toolchain plugin to keep the JBR version in sync with the used MPS version.

Notes:

  • Since 2021.1, the artifact com.jetbrains.platform-concurrency is no longer available.
  • Since 2022.2, the artifact com.jetbrains.platform-api is no longer available.

Adding a dependency on arbitrary JAR files from an MPS distribution

This repository only publishes some JAR files and does not publish additional JARs retroactively for older versions. If you are using Gradle, you can add a dependency on an arbitrary selection of JARs from within the MPS distribution as follows (using Gradle Kotlin syntax):

val mpsRuntime by configurations.creating
val mpsZip by configurations.creating

dependencies {
    mpsZip("com.jetbrains:mps:...")
    mpsRuntime(zipTree({ mpsZip.singleFile }).matching {
        include("lib/mps-core.jar")
        include("lib/mps-environment.jar")
        include("lib/mps-platform.jar")
        include("lib/mps-openapi.jar")
        include("lib/mps-logging.jar")
        include("lib/platform-api.jar")
        include("lib/util.jar")
    })
}

About

Plain gradle repository to download and publish new MPS versions

Topics

Resources

Code of conduct

Stars

2 stars

Watchers

20 watching

Forks

Releases

Packages

Used by

Contributors