After cloning your fork to local, follow the below steps to setup IntelliJ to run/debug IGB:
- Open integrated-genome-browser in IntelliJ.
- Click on the File tab and select the Project Structure option.
- Install Azul Zulu 21 version JDK and set it as the project SDK in the project settings.
- Click on the Run tab and select Edit Configuration optionIn IntelliJ, select FIle > Open then select your local Integrated Genome Browser project.
- In IntelliJ, select FIle > Project Structure...
- In the Project Structure window, under the Project section, set the SDK to a JDK 21 version that includes Java FX.
- Note: As of 2024, we use Azul Zulu 21.0.2 JDK FX.
- In the Project Structure window, under the Project section, set the SDK to a JDK 21 version that includes Java FX.
- In IntelliJ, select Run > Edit Configurations...
- Add a new configuration by clicking on the + (plus) icon and selecting JAR application option in the dropdownApplication.
- In the configuration tab, add :
- Set the Path to JAR to the location of the igb_exe.jar in the Integrated Genome Browser project.
- Note: The igb_exe.jar
- will be generated after first building the project. To build the project in a terminal, install maven, navigate to the IGB project, and then run: mvn clean install
- Set the
- JRE to the same Azul Zulu 21 JDK FX version used above.
- For the VM options field, add the JAVA_OPTS present in the run_igb.sh/run_igb.bat file (remove the back slashes) or the content below (this is the same content as in the file but modified as described).
- Set the Path to JAR to the location of the igb_exe.jar in the Integrated Genome Browser project.
Code Block | ||
---|---|---|
| ||
--add-opens=java.desktop/sun.swing=ALL-UNNAMED --add-opens=java.desktop/sun.awt.shell=ALL-UNNAMED --add-opens=java.desktop/java.awt.event=ALL-UNNAMED --add-opens=java.desktop/sun.awt.windows=ALL-UNNAMED --add-opens=java.desktop/sun.java2d=ALL-UNNAMED --add-opens=java.desktop/sun.font=ALL-UNNAMED --add-opens=java.desktop/java.awt=ALL-UNNAMED --add-opens=java.desktop/sun.awt=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.desktop/javax.swing=ALL-UNNAMED --add-opens=java.desktop/sun.swing=ALL-UNNAMED --add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED --add-opens=java.desktop/java.awt.peer=ALL-UNNAMED --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED --add-exports=java.desktop/sun.font=ALL-UNNAMED --add-exports=java.desktop/com.apple.eawt=ALL-UNNAMED --add-exports=java.desktop/com.apple.laf=ALL-UNNAMED --add-exports=java.desktop/com.apple.eawt.event=ALL-UNNAMED --add-exports java.desktop/com.sun.java.swing.plaf.windows=ALL-UNNAMED --add-exports java.desktop/com.apple.laf=ALL-UNNAMED --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED --add-opens java.base/java.net=ALL-UNNAMED |
...