kaikramer / keystore-explorer

KeyStore Explorer is a free GUI replacement for the Java command-line utilities keytool and jarsigner.
https://keystore-explorer.org/
GNU General Public License v3.0
1.67k stars 271 forks source link

Instructions or ability to build stand alone linux client #296

Closed lifebarier closed 3 years ago

lifebarier commented 3 years ago

After ./gradlew clean build created kse.jar does not run with java -jar: Error: Unable to initialize main class org.kse.KSE Caused by: java.lang.NoClassDefFoundError: org/bouncycastle/jce/provider/BouncyCastleProvider

./gradlew zip does not create redistributable/stand alone build on linux Caused by: net.rubygrapefruit.platform.NativeException: Could not start 'rcedit-x64.exe'

Always running from kse folder with ./gradlew run is inconvenient

Anyway to have working build for linux?

kaikramer commented 3 years ago

You also need the dependencies (bcpkix-jdk15on-1.68.jar, flatlaf-1.5.jar and so on) in order to run kse.jar.

There are several options to create a build for Linux, but I recommend to use the official release downloads or at least build KSE from a release tag. The master branch is rather unstable.

Anyway, here are the options:

  1. Build a RPM package: ./gradlew buildRpm
  2. Build a DEB package: ./gradlew buildDeb
  3. TAR with only the jars and a generic start script: ./gradlew distTar
  4. same as 3 as ZIP: ./gradlew distZip

Options 1 and 2 are used for the official builds, options 3 and 4 are from the distribution plugin of Gradle.

lifebarier commented 3 years ago
  1. Build a RPM package: ./gradlew buildRpm
  2. Build a DEB package: ./gradlew buildDeb
  3. TAR with only the jars and a generic start script: ./gradlew distTar
  4. same as 3 as ZIP: ./gradlew distZip

Will try 3 and 4 since I don't use debian or redhat. All of those should be added to build section of readme...

lifebarier commented 3 years ago

Had time to check. Seems to work. Should really appear in documentation.