aboutsummaryrefslogtreecommitdiffstats
path: root/CONTRIBUTING.md
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <kristof@marussy.com>2023-09-14 21:24:40 +0200
committerLibravatar Kristóf Marussy <kristof@marussy.com>2023-09-14 21:28:08 +0200
commit45cae393dcedb60d09387d8dc438e5975ee4762c (patch)
tree4d3e531abefbf30b640b1f2150d83af872ebf4de /CONTRIBUTING.md
parentMerge pull request #39 from kris7t/partial-interpretation (diff)
downloadrefinery-45cae393dcedb60d09387d8dc438e5975ee4762c.tar.gz
refinery-45cae393dcedb60d09387d8dc438e5975ee4762c.tar.zst
refinery-45cae393dcedb60d09387d8dc438e5975ee4762c.zip
chore: update README.md
Diffstat (limited to 'CONTRIBUTING.md')
-rw-r--r--CONTRIBUTING.md48
1 files changed, 48 insertions, 0 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 00000000..d5191795
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,48 @@
1<!--
2 SPDX-FileCopyrightText: 2021-2023 The Refinery Authors <https://refinery.tools/>
3
4 SPDX-License-Identifier: EPL-2.0
5-->
6
7# Contributing to Refinery
8
9## Setting up the development environment
10
11### With Eclipse IDE
12
131. Download and install a _Java 17_ compatible JDK. For Windows, prefer OpenJDK builds from [Adoptium](https://adoptium.net/).
14
152. Download and extract the [Eclipse IDE for Java and DSL Developers 2022-09](https://www.eclipse.org/downloads/packages/release/2022-09/r/eclipse-ide-java-and-dsl-developers) package.
16
173. Launch Eclipse and create a new workspace.
18
194. Open _Help > Install New Software..._ and install the following software from the _2022-09_ update site:
20 * _Modeling > Ecore Diagram Editor (SDK)_
21
225. Open _Help > Eclipse Marketplace_ and install the following software:
23 * _EclEmma Java Code Coverage_
24 * _SonarLint_
25
266. Open _Window > Preferences_ and set the following preferences:
27 * _General > Workspace > Text file encoding_ should be _UTF-8_.
28 * _General > Workspace > New text file line delimiter_ should be _Unix_.
29 * Add the JDK 17 to _Java > Installed JREs_.
30 * Make sure JDK 17 is selected for _JavaSE-17_ at _Java > Installed JREs > Execution Environments_.
31 * Set _Gradle > Java home_ to the `JAVA_HOME` directory (the directory which contains the `bin` directory) of JDK 17. Here, Buildship will show a yellow warning sign, which can be safely ignored.
32 * Set _Java > Compiler > JDK Compliance > Compiler compliance level_ to _17_.
33
347. Clone the project Git repository but do not import it into Eclipse yet.
35
368. Open a new terminal an run `./gradlew prepareEclipse` (`.\gradlew prepareEclipse` on Windows) in the cloned repository.
37 * This should complete without any compilation errors.
38 * If you get any errors about the JVM version, check whether the `JAVA_HOME` environment variable is set to the location of JDK. You can query the variable with `echo $JAVA_HOME` on Linux and `echo $Env:JAVA_HOME` in PowerShell on Windows. To set it, use `export JAVA_HOME=/java/path/here` or `$Env:JAVA_HOME="C:\java\path\here"`, respectively.
39 * If the build fails with a `Host name must not be empty` error, you [might need to remove the empty proxy configuration from your global `gradle.properties` file](https://stackoverflow.com/a/62128323).
40
419. Select _File > Import... > Gradle > Existing Gradle Project_ and import the cloned repository in Eclipse.
42 * Make sure to select the root of the repository (containing this file) as the _Project root directory_ and that the _Gradle distribution_ is _Gradle wrapper_.
43 * If you have previously imported the project into Eclipse, this step will likely fail. In that case, you should remove the projects from Eclipse, run `git clean -fxd` in the repository, and start over from step 8.
44
45### With IntelliJ IDEA
46
47It is possible to import the project into IntelliJ IDEA, but it gives no editing help for Xtext (`*.xtext`), MWE2 (`*.mwe2`), and Xtend (`*.xtend`) and Ecore class diagrams (`*.aird`, `*.ecore`, `*.genmodel`).
48