Git Product home page Git Product logo

gradle-one-jar's People

Contributors

rholder avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gradle-one-jar's Issues

OpenAL in lwjgl not working

I'm using OpenAL with lwjgl, but OpenAL library could not be found by lwjgl.

org.lwjgl.LWJGLException: Could not locate OpenAL library.
        at org.lwjgl.openal.AL.create(AL.java:151)
        at org.lwjgl.openal.AL.create(AL.java:102)
        at org.lwjgl.openal.AL.create(AL.java:201)
...

And I tried to set -Dorg.lwjgl.librarypath to an external path including the binaries, the OpenAL can be loaded properly.

additionalDir Doesn't seem to work

I have a gradle file defined as:

apply plugin: 'gradle-one-jar'

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

task fullJar(type: OneJar) {
    mainClass = 'com.mycompany.MyApp'
    additionalDir = file('lib')
}

uploadArchives {
    repositories {
       flatDir {
           dirs 'repos'
       }
    }
}

In the lib directory is Oracle JDBC driver ojdbc7.jar, but this jar never makes it anywhere into the final OneJar. Thank you

additionalDir = file('someDirFilledWithGoodies')

Hi,

I have the plugin working brilliantly apart from copying files to the root of the jar. I've tried many combinations for settings for the additionalDir = file('someDirFilledWithGoodies') but cannot see where it's going wrong. Is there some way I can see the debug messages of the plugin or can you tell me where the root directory is for this value? Adding '.' or '/' didn't seem to do anything and trying to use some directories I thought it would find has proven fruitless.

Cheers!

Naming jar same as project name gives empty main.jar

If I use the following build, in a project that resides in /Users/gus/projects/solrsystem/SolrSystem/code/ingest, I get a onejar that has an empty main/main.jar.

apply plugin: 'java'
apply plugin: 'application'
apply plugin: 'gradle-one-jar'

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

repositories {
    mavenCentral()
}

dependencies {
    compile 'com.google.guava:guava:15.0'
    compile 'com.google.code.findbugs:jsr305:2.0.2'
    testCompile 'junit:junit:4.11'
}

task oneJar(type: OneJar) {
    mainClass = 'org.solrsystem.ingest.Main'
    archiveName = 'ingest.jar'
}

getting started with hello world

Hi!

This is not an issue but a very basic question about getting started with a hello world example.

I have created a scala Application in src/main/scala/example/Hi.scala with this content:

package example

object Hi extends App {
Console.println("Hello World: " + (args mkString ", "))
}

furthermore i added a build.gradle file to the root of the project:

apply plugin: 'gradle-one-jar'
apply plugin: 'scala'

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.github.rholder:gradle-one-jar:1.0.3'
    }
}

task awesomeFunJar(type: OneJar) {
    mainClass = 'example.Hi'
}

When i now run the command gradle awesomeFunJar i get the error:

Execution failed for task ':compileScala'.
'compileScala.scalaClasspath' must not be empty

What do i have to do to get my standalone HelloWorld Example to run?

Thanks!

one-jar artifact is already added by the plugin

We had an issue trying to upload our fat jar to a maven repository. The task always failed with the error

   Could not publish configuration 'archives'
     A POM cannot have multiple artifacts with the same type and classifier. 
         Already have MavenArtifact myservice:jar:jar:fat, trying to add MavenArtifact myservice:jar:jar:fat.

We figured out, that the gradle-one-jar-plugin already adds the oneJar to the artifacts. I would assume, that I need to add these lines myself:

artifacts {
    archives oneJar
}

Do you agree in letting the user add the artifact himself?

Hiding the logs from OneJar?

Hello,

This plugin is what I was looking for for one of my projects (https://github.com/fge/json-schema-validator), so thanks for that!

I have one nitpick though. When I launch it, I see this output:

[Boot] INFO:  setProperties(com.simontuffs.onejar.JarClassLoader@7ecd2c3c)
[Boot] INFO:  using JarClassLoader: com.simontuffs.onejar.JarClassLoader
missing arguments
Syntax: java -jar jsonschema.jar [options] file [file...]
Options: 
--syntax: check the syntax of schema(s) given as argument(s)

After some digging around, I could find on StackOverflow that you could add this JVM option to silence this output (not documented on the one-jar project page!):

-Done-jar.silent=true

This works; however I'd like to avoid having users to type that each time!

Is there an undocumented option to gradle-one-jar allowing to generate a "silent jar" by default?

LWJGL natives doesn't work in OneJar

LWJGL needs natives.
So I got them and added binLib=files("/libs/native/windows")
to gradle.build in task, but lwjgl crashes on launch that natives are missing.
When I put run config
run {
systemProperty 'java.library.path', file( '/libs/native/windows' )
}
than run command 'run' program is launched fine. Is there any implementation of doing it in plugin?

gradle outputs.files includes ghost file

Small thing. Not sure what the gradle-recommended behavior is here.

task oneJar(type: OneJar) {
    doLast {
        outputs.files.forEach{
            printf('exists: %s, path: %s%n', it.exists(), it.absolutePath)
        }
    }
}

includes an ephemeral file

exists: false, path: /home/user/myproj/build/libs/standalone.jar
exists: true, path: /home/user/myproj/build/libs/myproj-0.0.1-SNAPSHOT-standalone.jar

which can muck up dependent gradle build scripts a little, since I would like to assume that there is only one OneJar output. So right now I have to filter out the temporary file to get the singleFile that I am expecting.

outputs.files.filter{ it.exists() }.singleFile

Might be nothing. The last line isn't a huge deal, but might be problematic down the road for other build scripts if they reference oneJar.outputs which includes a reference to a non-existent file.

jar name

I was wondering if we can give a name to the jar file instead of the name it produces by default?

Error during task ':assemble' when declaring OneJar output as artifact

If the output of the OneJar task is being declared as archive artifact in the same build, Gradle 1.3 stops with the error "Could not determine the dependencies of task ':assemble'.".

I'm not sure if it's a problem with the gradle-one-jar plugin or Gradle 1.3 itself, but here's all the information I've gathered related to the problem:

Using the parameter --stacktrace and running the ':assemble' task produces the following output:

$ ./gradlew assemble --stacktrace
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:jar
:oneJar
     [copy] Copying 1 file to /home/joschi/workspace/gradle-one-jar-error/build/one-jar-build/main
:assemble

FAILURE: Build failed with an exception.

* What went wrong:
Could not determine the dependencies of task ':assemble'.

* Try:
Run with --info or --debug option to get more log output.

* Exception is:
org.gradle.api.GradleException: Could not determine the dependencies of task ':assemble'.
        at org.gradle.api.internal.tasks.CachingTaskDependencyResolveContext.resolve(CachingTaskDependencyResolveContext.java:65)
        at org.gradle.api.internal.tasks.AbstractTaskDependency.getDependencies(AbstractTaskDependency.java:27)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:40)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:52)
        at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:42)
        at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(AbstractTask.java:247)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.executeTask(DefaultTaskPlanExecutor.java:52)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.processTask(DefaultTaskPlanExecutor.java:38)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:30)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:83)
        at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:29)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
        at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23)
        at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:67)
        at org.gradle.api.internal.changedetection.TaskCacheLockHandlingBuildExecuter$1.run(TaskCacheLockHandlingBuildExecuter.java:31)
        at org.gradle.internal.Factories$1.create(Factories.java:22)
        at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:124)
        at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:112)
        at org.gradle.cache.internal.DefaultPersistentDirectoryStore.useCache(DefaultPersistentDirectoryStore.java:130)
        at org.gradle.api.internal.changedetection.DefaultTaskArtifactStateCacheAccess.useCache(DefaultTaskArtifactStateCacheAccess.java:79)
        at org.gradle.api.internal.changedetection.TaskCacheLockHandlingBuildExecuter.execute(TaskCacheLockHandlingBuildExecuter.java:29)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
        at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23)
        at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:67)
        at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:54)
        at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:158)
        at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:113)
        at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:81)
        at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:38)
        at org.gradle.launcher.exec.InProcessGradleLauncherActionExecuter.execute(InProcessGradleLauncherActionExecuter.java:39)
        at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:45)
        at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
        at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:126)
        at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:42)
        at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:126)
        at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:24)
        at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:126)
        at org.gradle.launcher.daemon.server.exec.StartStopIfBuildAndStop.execute(StartStopIfBuildAndStop.java:33)
        at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:126)
        at org.gradle.launcher.daemon.server.exec.ReturnResult.execute(ReturnResult.java:34)
        at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:126)
        at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:70)
        at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:68)
        at org.gradle.util.Swapper.swap(Swapper.java:38)
        at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:68)
        at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:126)
        at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
        at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
        at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:126)
        at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:59)
        at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
        at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:126)
        at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:45)
        at org.gradle.launcher.daemon.server.DaemonStateCoordinator.runCommand(DaemonStateCoordinator.java:186)
        at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy.doBuild(StartBuildOrRespondWithBusy.java:49)
        at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
        at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:126)
        at org.gradle.launcher.daemon.server.exec.HandleStop.execute(HandleStop.java:36)
        at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:126)
        at org.gradle.launcher.daemon.server.exec.CatchAndForwardDaemonFailure.execute(CatchAndForwardDaemonFailure.java:32)
        at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:126)
        at org.gradle.launcher.daemon.server.exec.DefaultDaemonCommandExecuter.executeCommand(DefaultDaemonCommandExecuter.java:48)
        at org.gradle.launcher.daemon.server.DefaultIncomingConnectionHandler$ConnectionWorker.handleCommand(DefaultIncomingConnectionHandler.java:155)
        at org.gradle.launcher.daemon.server.DefaultIncomingConnectionHandler$ConnectionWorker.receiveAndHandleCommand(DefaultIncomingConnectionHandler.java:128)
        at org.gradle.launcher.daemon.server.DefaultIncomingConnectionHandler$ConnectionWorker.run(DefaultIncomingConnectionHandler.java:116)
        at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:66)
Caused by: java.lang.UnsupportedOperationException
        at $Proxy42.getBuildDependencies(Unknown Source)
        at org.gradle.api.internal.tasks.CachingTaskDependencyResolveContext$TaskGraphImpl.getNodeValues(CachingTaskDependencyResolveContext.java:90)
        at org.gradle.api.internal.CachingDirectedGraphWalker$GraphWithEmpyEdges.getNodeValues(CachingDirectedGraphWalker.java:173)
        at org.gradle.api.internal.CachingDirectedGraphWalker.doSearch(CachingDirectedGraphWalker.java:95)
        at org.gradle.api.internal.CachingDirectedGraphWalker.findValues(CachingDirectedGraphWalker.java:63)
        at org.gradle.api.internal.tasks.CachingTaskDependencyResolveContext.doResolve(CachingTaskDependencyResolveContext.java:74)
        at org.gradle.api.internal.tasks.CachingTaskDependencyResolveContext.resolve(CachingTaskDependencyResolveContext.java:63)
        ... 67 more


BUILD FAILED

Total time: 0.637 secs

The task ':oneJar' correctly creates its output:

$ ls build/libs/
gradle-one-jar-error.jar  gradle-one-jar-error-standalone.jar

I've created a minimal project to demonstrate the error. You can easily clone it with git clone https://gist.github.com/ae79694daec0f11313ef.git.

JAR file entry order should be consistent with the Ant Task

I was having a hard time getting my project to run correctly when built with this plugin, in particular I could not get log4j initialized correctly. I noticed the following logging statement coming from OneJar:

[JarClassLoader] INFO:  log4j.properties in main/main.jar is hidden by lib/utils.jar (with different bytes)

It turned out that utils.jar had a log4j.properties file and I had just assumed that OneJar would prefer the one from main.jar. Reading the OneJar documentation closely, I noticed the section on resource loading includes the following caveat:

Note: this assumes that the Ant task is used to construct the One-Jar. Otherwise, embedded Jar resources are loaded in the order they appear in the "jar -tvf" listing.

Sure enough, running "jar tf" on the JAR produced by this plugin was listing all of the "lib" contents ahead of the "main/main.jar" entry.

Looking at the code I suspect this is the fault of a lexicographical sort on contents of staging directory. The OneJar Ant Task from the official project does not include in the main.jar in the staging area, instead it explicitly adds it as the first entry to the JAR file (running "jar tf" on a JAR from the Ant task confirms this). Perhaps if it would be possible to make a similar change here.

Unusably slow

I tried this out on a small project that includes several large dependant jars (50mb apx).
Some of those do jar validation and resource loading on startup.
Using one Jar the startup time was > 15 seconds.
Using traditional directory layout, 1.5 sec.
( on a very powerful 8 core 16 cpu 48 GB linux system on SSD).

That and the boot logging -- just a FYI for others looking at this project, might not be quite ready for prime time. I do love what it does though, I dont really want a "Shaded" jar.

Unable to build jar: Cannot convert the provided notation to a File or URI: java.io.BufferedWriter@

I am trying to build a jar, so i followed the instructions but every-time i run the task i get this error. I'm i missing something in the build.gradle file?

Execution failed for task ':awesomeFunJar'.

Cannot convert the provided notation to a File or URI: java.io.BufferedWriter@48e04250.
The following types/formats are supported:
- A String or CharSequence path, for example 'src/main/java' or '/usr/include'.
- A String or CharSequence URI, for example 'file:/usr/include'.
- A File instance.
- A Path instance.
- A Directory instance.
- A RegularFile instance.
- A URI or URL instance.


My build.gradle is:

apply plugin: 'gradle-one-jar'
apply plugin: 'java'


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


task awesomeFunJar(type: OneJar) {
    mainClass = 'com.practice.Application'
}

repositories {
  
        mavenCentral()
}

dependencies {
    
}

Allow adding of additional resources

The one-jar Ant task allows adding additonal resources using for example the binlib tag (for adding JNI dependencies) or the fileset tag to include additional files in the root of the resulting JAR.

Currently the Gradle OneJar plugin doesn't support adding these additional resources.

NullPointerException when running the newly built jar

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!

With Gradle 2.9, modifying the manifest for a task of type OneJar results in StackOverflow error

With this code:

task oneJar(type: OneJar){
    manifest { attributes "myKey": "myValue"}
}

Using 1.0.4 version of the onejar plugin.

Running the build with Gradle 2.9 (this worked in Gradle 2.2), the following stacktrace is generated. This happens during project evaluation. As a workaround, I'm able to create the manifest file by hand (per the documentation, including the other properties), and add that to my oneJar task.

* Exception is:
org.gradle.api.GradleScriptException: A problem occurred evaluating project ':myProject'.
    at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:93)
    at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl$1.run(DefaultScriptPluginFactory.java:144)
    at org.gradle.configuration.ProjectScriptTarget.addConfiguration(ProjectScriptTarget.java:72)
    at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:149)
    at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:38)
    at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:25)
    at org.gradle.configuration.project.ConfigureActionsProjectEvaluator.evaluate(ConfigureActionsProjectEvaluator.java:34)
    at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:55)
    at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:496)
    at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:87)
    at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:47)
    at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:35)
    at org.gradle.initialization.DefaultGradleLauncher$2.run(DefaultGradleLauncher.java:125)
    at org.gradle.internal.Factories$1.create(Factories.java:22)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:52)
    at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:122)
    at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32)
    at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:99)
    at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:93)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:62)
    at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:93)
    at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:82)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:94)
    at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)
    at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:43)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:28)
    at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:77)
    at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:47)
    at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:52)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
    at org.gradle.util.Swapper.swap(Swapper.java:38)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.health.DaemonHealthTracker.execute(DaemonHealthTracker.java:40)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:66)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(HintGCAfterBuild.java:41)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
    at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:246)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
    at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
Caused by: java.lang.StackOverflowError
    at org.gradle.api.tasks.bundling.Jar.manifest(Jar.groovy:29)
    at com.github.rholder.gradle.task.OneJar.super$8$manifest(OneJar.groovy)
    at org.gradle.api.tasks.bundling.Jar.manifest(Jar.groovy:29)
    at com.github.rholder.gradle.task.OneJar.super$8$manifest(OneJar.groovy)

Gradle 2.4 support

Hi,

When trying to use the plugin with Gradle 2.4, I'm facing two issues:

Caused by: java.lang.StackOverflowError
at org.gradle.api.tasks.bundling.Jar.manifest(Jar.groovy:29)
at com.github.rholder.gradle.task.OneJar.super$8$manifest(OneJar.groovy)
at org.gradle.api.tasks.bundling.Jar.manifest(Jar.groovy:29)
at com.github.rholder.gradle.task.OneJar.super$8$manifest(OneJar.groovy)

Unfortunately for now, I haven't find what could be the problem for both (could it be related to the fact that the Jar class changed from Groovy to Java? for the second issue)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.