Skip to content

JetBrains/MPS

Repository files navigation

official JetBrains project JetBrains MPS

Learn Meta Programming with Us

Design your own Domain Specific Language with full development environment. Get code editor with completion, semantics and type checking with one click. Write generators to compile your DSL into multiple target languages, such as Java, C, XML, and many more.

Useful links

Building MPS from sources

Download IntelliJ IDEA from the JetBrains website. Community edition will work just fine.

  1. Fork the MPS GitHub repository into your own space using the GitHub UI (go to the MPS repo and press the fork button at the top. This will create a fork of the repository in your github space).
  2. Clone your fork to your local machine: git clone git@github.com:/MPS.git. Depending on your internet connection, this may take a long time, MPS is big. Consider using the --depth git parameter to clone only part of the history of the project to save time and space.
  3. It is preferable to work in your own branch, so create a new branch to work in git checkout -b my_branch_name.
  4. Open the project in IntelliJ IDEA (either Community or Ultimate Edition). Since IDEA 2023.3 you have to install the Ant plugin as well as the Plugin DevKit plugin, without which the MPS project cannot be compiled.
  5. Attach JB JDK 17 to the project.
    1. Download latest JB JDK 17 for your OS and your version of MPS. Go to the MPS TeamCity site, scroll to the build configuration that corresponds to the MPS version that you are trying to build and locate the JDK distribution (e.g. 2022.2 -> Distribution -> Get Resources). Click on the Artifacts symbol of the last successful build of Get Resources and choose the distribution that you need. Make sure you grab jbrsdk not jbsdk.
    2. Main menu -> File -> Project Structure opens the Project Structure dialog.
    3. Under Platform Settings -> SDK, add a new JDK named "JB JDK 17".
  6. Additionally, create an IntelliJ Platform Plugin SDK in the same Platform Settings -> SDK dialog and name it "IDEA IC". The ideaIntegrationCommon, IDEAPlugin and ups-idea-plugin modules need this SDK and they will be using it automatically as soon as you create it and give it the "IDEA IC" name. For more details on how to add an IntelliJ Platform Plugin SDK, consult this help page.
  7. Rebuild the project from the Build menu (it will take quite a while the first time). If you get errors reported, please revisit point 4. Without the Ant plugin, IDEA is not able to download the dependencies.
  8. Run the MPS -> Run run configuration in the Run menu. (From menu Run select Run..., which shows a popup menu, then expand the MPS option into a submenu with mouse or with the right arrow key and choose "Run" from the submenu)
  9. To debug MPS, got again to the Run menu and select Debug..., which shows a popup menu. In this menu expand the MPS option into a submenu with mouse or with the right arrow key and choose "Debug" from the submenu.
  10. Once MPS starts, open the MPS project (point MPS to the root folder of what you've cloned).

Download

If you'd prefer a ready-to-use build, please head over to the Download page and grab an installation package of your choice.

License

MPS is licensed under the Apache 2 open-source license. See the complete MPS license agreement for full details.

System requirements

To build JetBrains MPS from sources you need JDK 17. Older JDK versions are currently not supported for building MPS from sources.

IntelliJ IDEA Community or Ultimate edition shall be used to open the project. The versions of IntelliJ IDEA must reflect the version (branch) of the MPS project that you are opening:

  • IDEA 2019.3.* for MPS 2019.3 and the 193.* branches
  • The latest Idea EAP for the MPS master branch

For MacOS users it is required to use the JetBrains JDK (https://bintray.com/jetbrains/intellij-jdk/).


Develop with pleasure! JetBrains MPS Team