gradle-one-jar icon indicating copy to clipboard operation
gradle-one-jar copied to clipboard

NullPointerException when running the newly built jar

Open joshattr opened this issue 9 years ago • 1 comments

Hello, I'm getting the following output when running a jar built with this plugin:

[Boot] INFO:  setProperties(com.simontuffs.onejar.JarClassLoader@6e0be858)
[Boot] INFO:  using JarClassLoader: com.simontuffs.onejar.JarClassLoader
Exception in thread "main" java.lang.NullPointerException
    at java.lang.String.replace(String.java:2240)
    at com.simontuffs.onejar.JarClassLoader.replaceProps(JarClassLoader.java:501)
    at com.simontuffs.onejar.JarClassLoader.load(JarClassLoader.java:349)
    at com.simontuffs.onejar.JarClassLoader.load(JarClassLoader.java:319)
    at com.simontuffs.onejar.Boot.run(Boot.java:295)
    at com.simontuffs.onejar.Boot.main(Boot.java:161)

Here are the relevant pieces of my build.gradle:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath group: 'com.github.rholder', name: 'gradle-one-jar', version: '1.0.4'
    }
}

// ...

task uberjar(type: OneJar) {
    mainClass = 'my.Main'
}

Here's some relevant discussion. This may just be my issue, as I'm new to gradle... but I don't think it is. Let me know if I can help debug!

joshattr avatar Nov 04 '15 18:11 joshattr

I am not a Gradle user, but a Maven guy. Anyway, I also had problems getting One-JAR working with BouncyCastle-based project. This was due to the fact that BC JARs are signed, my own are not. So I used JDotSoft JarClassLoader. As I did not want to copy the source code into each of my projects, I released it as a JAR on Maven Central. My own repo contains usage instructions:

https://github.com/kriegaex/JarClassLoader

So you can use it and do something similar from Gradle.

kriegaex avatar Aug 04 '18 11:08 kriegaex