Skip to content

Commit

Permalink
Structure SUMMARY.md and add local build to jpackage.md
Browse files Browse the repository at this point in the history
  • Loading branch information
koppor committed Mar 13, 2020
1 parent b02f982 commit ae30bf0
Show file tree
Hide file tree
Showing 3 changed files with 54 additions and 41 deletions.
37 changes: 15 additions & 22 deletions docs/SUMMARY.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,18 @@
# Table of contents

* [Develop JabRef](README.md)
* [Overview on Developing](README.md)
* [Architectural Decisions](adr/README.md)
* [Use Markdown Architectural Decision Records](adr/0000-use-markdown-architectural-decision-records.md)
* [Use Crowdin for translations](adr/0001-use-crowdin-for-translations.md)
* [Fully Support UTF-8 Only For LaTeX Files](adr/0005-fully-support-utf8-only-for-latex-files.md)
* [Only translated strings in language file](adr/0006-only-translated-strings-in-language-file.md)
* [Use MariaDB Connector](adr/0004-use-mariadb-connector.md)
* [Use slf4j together with log4j2 for logging](adr/0002-use-slf4j-for-logging.md)
* [\[short title of solved problem and solution\]](adr/template.md)
* [Provide a human-readable changelog](adr/0007-human-readable-changelog.md)
* [Use Gradle as build tool](adr/0003-use-gradle-as-build-tool.md)
* [How to test](testing.md)
* [Debugging jpackage installations](debugging-jpackage-installations.md)
* [High-level documentation](high-level-documentation.md)
* [JabRef's development strategy](development-strategy.md)
* [Recommendations for UI design](ui-recommendations.md)
* [Code Howtos](code-howtos.md)
* [Code Quality](code-quality.md)
* [Set up a local workspace](guidelines-for-setting-up-a-local-workspace.md)
* [Custom SVG icons](custom-svg-icons.md)
* [JavaFX](javafx.md)
* [Useful development tooling](tools.md)

* Getting into the code
* [Set up a local workspace](guidelines-for-setting-up-a-local-workspace.md)
* [High-level documentation](high-level-documentation.md)
* [How to test](testing.md)
* [Code Howtos](code-howtos.md)
* [JabRef's development strategy](development-strategy.md)
* Advanced reading
* [Code Quality](code-quality.md)
* [Recommendations for UI design](ui-recommendations.md)
* [Custom SVG icons](custom-svg-icons.md)
* [Creating a binary and debug it](jpackage.md)
* Readings on Coding
* [Readings on JavaFX](javafx.md)
* [Useful development tooling](tools.md)
19 changes: 0 additions & 19 deletions docs/debugging-jpackage-installations.md

This file was deleted.

39 changes: 39 additions & 0 deletions docs/jpackage.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# jpackage

JabRef uses [jpackage](https://jdk.java.net/jpackage/) to build binary distributions for Windows, Linux, and Mac OS X.

## Build Windows binaries locally

Preparation:

1. Install [WiX Toolset](https://wixtoolset.org/)
1. Open administrative shell
2. Use [Chocolatey](https://chocolatey.org/) to install it: `choco install wixtoolset`
2. Open [git bash](https://superuser.com/a/1053657/138868)
3. Get [JDK14](https://openjdk.java.net/projects/jdk/14/): `wget https://download.java.net/java/GA/jdk14/076bab302c7b4508975440c56f6cc26a/36/GPL/openjdk-14_windows-x64_bin.zip`
4. Extract JDK14: `unzip openjdk-14_windows-x64_bin.zip`

Compile:

1. `export BADASS_JLINK_JPACKAGE_HOME=jdk-14/`
2. `./gradlew -PprojVersion="5.0.50013" -PprojVersionInfo="5.0-ci.13--2020-03-05--c8e5924" jlinkZip`
3. `./gradlew -PprojVersion="5.0.50013" -PprojVersionInfo="5.0-ci.13--2020-03-05--c8e5924" jpackage`

## Debugging jpackage installations

Sometimes issues with modularity only arise in the installed version and do not occur if you run from source. Using remote debugging, it's still possible to hook your IDE into the running JabRef application to enable debugging.

### Debugging on Windows

1. Open `build.gradle`, under jlink options remove `--strip-debug`
2. Build or let the CI build a new version
3. Download the modified version or portable version go to `\JabRef\runtime\bin\Jabref.bat`
4. Modify the bat file, replace the last line with

```cmd
pushd %DIR% & %JAVA_EXEC% -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8000,suspend=n -p "%~dp0/../app" -m org.jabref/org.jabref.JabRefLauncher %* & popd
```

5. Open your IDE and add a "Remote Debugging Configuration" for `localhost:8000`
6. Start JabRef from the bat file
7. Connect with your IDE using remote debugging

0 comments on commit ae30bf0

Please sign in to comment.