Integrated: 8314486: JavaFX build uses deprecated features that will be removed in gradle 8

Ambarish Rapte arapte at openjdk.org
Tue Oct 10 12:07:19 UTC 2023


On Mon, 9 Oct 2023 14:56:39 GMT, Ambarish Rapte <arapte at openjdk.org> wrote:

> This is gradle only change, which fixes few warnings that are observed with gradle 7.6 and which eventually result to an error with gradle 8.3
> With this change the warnings get fixed and no error is observed with gradle 8.3
> Verified that several gradle tasks(all, sdk, javadoc, apps, shims, test) complete without any failure.
> 
> Warnings that are fixed:
> 1. The SourceDirectorySet.outputDir property has been deprecated. This is scheduled to be removed in Gradle 8.0. Please use the classesDirectory property instead. See https://docs.gradle.org/7.6/dsl/org.gradle.api.file.SourceDirectorySet.html#org.gradle.api.file.SourceDirectorySet:outputDir for more details.
> -> As per this [7.x to 8.0 upgrade guide](https://docs.gradle.org/8.0/userguide/upgrading_version_7.html#sourcedirectoryset_api_cleanup) outputDir should be replaced with `destinationDirectory`
> 
> 2. The AbstractCompile.destinationDir property has been deprecated. This is scheduled to be removed in Gradle 8.0. Please use the destinationDirectory property instead. Consult the upgrading guide for further information: https://docs.gradle.org/7.6/userguide/upgrading_version_7.html#compile_task_wiring
> -> As per the above doc, replacing `destinationDir` with `destinationDirectory` resolves the warning
> 
> 3. Various dependency warnings like one below:
> Gradle detected a problem with the following location: '<path>/rt/modules/javafx.base/build/module-classes'. Reason: Task ':base:modularJarStandaloneMac' uses this output of task ':base:buildModuleMac' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.6/userguide/validation_problems.html#implicit_dependency for more details about this problem.
> -> There are several such warning messages observed.
> -> Each warning required an explicit inclusion of dependency. All dependency changes are to fix this warning.
> 
> An easy way to review would be.
> 1. Build with gradle 7.6 (using  `--warning-mode all`  gradle option)
> 1.1 All above warnings can be observed and build completes successfully.
> 
> 2. Build with gradle 8.3 (using  `--warning-mode all`  gradle option)
> 2.1 Without this change build would fail citing above warnings as errors
> 2.2 With this change build completes successfully and above warnings do not occur

This pull request has now been integrated.

Changeset: 73e690fc
Author:    Ambarish Rapte <arapte at openjdk.org>
URL:       https://git.openjdk.org/jfx/commit/73e690fc118c55d0c59fb567e884434a03243fff
Stats:     55 lines in 1 file changed: 28 ins; 0 del; 27 mod

8314486: JavaFX build uses deprecated features that will be removed in gradle 8

Reviewed-by: jvos, kcr

-------------

PR: https://git.openjdk.org/jfx/pull/1256


More information about the openjfx-dev mailing list