Skip to content
JMAilan edited this page Oct 8, 2024 · 7 revisions

Part 1

  • install IntelliJ (beyond the scope of this documentation)
  • start IntelliJ

01-01-initial-prompt

  • select Do not import settings
  • click OK

01-02-ui-theme-selection

  • select Theme
  • click Skip Remaining and Set Defaults

01-03-checkout-from-git

  • select Check out from Version Control
  • select Git

01-04-fill-in-the-form

  • enter your repository/branch details

  • click Test

  • click Clone

  • -- wait ---

You will receive a prompt indicating that your checkout from version control contained a project file. In my experience, attempting to open this file fails to do anything useful.

01-05-do-not-open-it

  • click No

01-06-click-open

  • click Open

01-07-open-the-pom

Browse to the folder you specified for the parent and inside the folder you specified for the git checkout. You should see a pom.xml file.

  • select the pom.xml file
  • click OK

01-08-open-as-project

  • select Open as Project

At this point IntelliJ should be open with the Forge project. However, it will take a while for IntelliJ to download all the project dependencies. This is reflected in the bottom status bar by default.

Part 2

  • select File
  • select Project Structure...

02-01-project-settings

  • select New
  • select JDK

02-02-new-jdk

02-03-jdk-homedirectory

If necessary browse to the JDK directory.

  • click OK

02-04-after-jdk-setup

  • click OK

  • select Run from the top menu

  • select Debug... from the drop down

02-05-edit-configurations

  • select Edit Configurations...

  • click the + in the upper left

02-06-application

  • select "Application"

02-07-debug-setup

  • set the Name to: Forge

  • set the Main class to: forge.view.Main

  • Latest IntelliJ Versions: click Modify options and check Add VM Options

  • set the VM options to:

    • (using JAVA 8 / 1.8)

      -Xms768m -XX:+UseParallelGC -Dsun.java2d.xrender=false -Dio.netty.tryReflectionSetAccessible=true

    • (JAVA 11 and above)

      -Xms768m -XX:+UseParallelGC -Dsun.java2d.xrender=false --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED --add-opens java.base/java.text=ALL-UNNAMED --add-opens java.desktop/java.awt.font=ALL-UNNAMED --add-opens java.base/jdk.internal.misc=ALL-UNNAMED --add-opens java.base/sun.nio.ch=ALL-UNNAMED --add-opens java.base/java.nio=ALL-UNNAMED --add-opens java.base/java.math=ALL-UNNAMED --add-opens java.base/java.util.concurrent=ALL-UNNAMED --add-opens java.desktop/java.awt=ALL-UNNAMED --add-opens java.base/java.net=ALL-UNNAMED --add-opens java.desktop/javax.swing=ALL-UNNAMED --add-opens java.desktop/java.beans=ALL-UNNAMED --add-opens java.desktop/javax.swing.border=ALL-UNNAMED -Dio.netty.tryReflectionSetAccessible=true

  • set the Working directory to %MODULE_WORKING_DIR%

  • set Use classpath of module to: forge-gui-desktop

  • click Debug

  • -- wait --

If all goes well, you should eventually see the Forge splash screen followed by the main UI.

Clone this wiki locally