crotwell / gradle-macappbundle

A Gradle Plugin to create a Mac OSX .app application and dmg based on the project.
Apache License 2.0
94 stars 33 forks source link

Deprecation warning with Gradle 4.0-rc-1 #46

Closed huxi closed 6 years ago

huxi commented 7 years ago

The following deprecation warning is generated with Gradle 4.0-rc-1:

Using a single directory for all classes from a source set. This behaviour has been deprecated and is scheduled to be removed in Gradle 5.0
    at edu.sc.seis.macAppBundle.MacAppBundlePlugin.apply(MacAppBundlePlugin.groovy:84)
    at edu.sc.seis.macAppBundle.MacAppBundlePlugin.apply(MacAppBundlePlugin.groovy)

Output above is generated with --stacktrace option, grepping the stacktrace elements on edu. Otherwise the given location is the place in build.gradle where the plugin is applied.

crotwell commented 6 years ago

Can't reproduce this with 2.1.6 running in gradle 4.0.1.

What version of macAppBundle are you using?

crotwell commented 6 years ago

Closing as can't reproduce. Please reopen if you have more information.

huxi commented 6 years ago

First of all: sorry for the crappy original bug report. I should have at least mentioned that I was using 2.1.6 of the plugin. Secondly, I really should have checked that this issue is easily reproducible, which it isn't. I'm still unable to reproduce this problem in a small project. Sorry again. Thirdly, I still see the problem in my own build but I now I'm pretty sure that issue #120 of forbidden-apis is the likely root cause of it.

Shown below is another cut-down part of the deprecation warning stack trace:

at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGetProperty(AbstractCallSite.java:296)
at plugin-init$_run_closure3$_closure5$_closure6$_closure9.doCall(plugin-init.groovy:49)
at de.thetaphi.forbiddenapis.gradle.CheckForbiddenApis_Decorated.getClassesDir(Unknown Source)
at plugin-init$_run_closure3$_closure5$_closure7.doCall(plugin-init.groovy:55)
at org.gradle.api.internal.project.DefaultProject.allprojects(DefaultProject.java:620)
at org.gradle.api.internal.project.DefaultProject.getTasksByName(DefaultProject.java:795)
at org.gradle.api.Project$getTasksByName$3.call(Unknown Source)
at edu.sc.seis.macAppBundle.MacAppBundlePlugin.apply(MacAppBundlePlugin.groovy:84)
at edu.sc.seis.macAppBundle.MacAppBundlePlugin.apply(MacAppBundlePlugin.groovy)
at build_4cibqupx9n0pz46b4w4zdy069$_run_closure10.doCall([..]/lilith/build.gradle:348)
at build_4cibqupx9n0pz46b4w4zdy069.run([..]/lilith/build.gradle:345)

build.gradle:348 contains the apply plugin: 'edu.sc.seis.macAppBundle' line in my build file so I assumed the warning was caused by applying your plugin, providing the (what I thought) relevant parts of the stack trace.

Unfortunately, I missed the line de.thetaphi.forbiddenapis.gradle.CheckForbiddenApis_Decorated.getClassesDir(Unknown Source) above those which I only just found while trying to produce a small project showing the issue at hand. Because of this, I'll stop searching for a reproducible testcase and will instead wait and see if this issue vanishes when the forbidden-apis plugin has been fixed - which I'm quite sure it will.

I just wanted to let you know all this so it won't occupy any of your neurons unnecessarily.

Cheers and thanks for taking a look at this!

uschindler commented 6 years ago

I have a pull request for forbidden apis already: https://github.com/policeman-tools/forbidden-apis/pull/124