Overview

After the upgrade to Gradle 7.2 (#26870), I noticed that we can likely greatly simplify our custom Gradle configuration for Eclipse IDE.

Example Warnings

> Task :spring-core:eclipseSettings
Execution optimizations have been disabled for task ':spring-core:eclipseSettings' to ensure correctness due to the following reasons:

  - Gradle detected a problem with the following location: '/spring-framework/spring-core/.settings'. Reason: Task ':spring-core:eclipseJdt' uses this output of task ':spring-core:eclipseSettings' 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.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.
Gradle detected a problem with the following location: '/spring-framework/spring-core/.settings'. Reason: Task ':spring-core:eclipseJdt' uses this output of task ':spring-core:eclipseSettings' 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.2/userguide/validation_problems.html#implicit_dependency for more details about this problem. This behaviour has been deprecated and is scheduled to be removed in Gradle 8.0. Execution optimizations are disabled to ensure correctness. See https://docs.gradle.org/7.2/userguide/more_about_tasks.html#sec:up_to_date_checks for more details.

> Task :spring-core:eclipseWstComponentSettings
Execution optimizations have been disabled for task ':spring-core:eclipseWstComponentSettings' to ensure correctness due to the following reasons:

  - Gradle detected a problem with the following location: '/spring-framework/spring-core/.settings'. Reason: Task ':spring-core:eclipseJdt' uses this output of task ':spring-core:eclipseWstComponentSettings' 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.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.
Gradle detected a problem with the following location: '/spring-framework/spring-core/.settings'. Reason: Task ':spring-core:eclipseJdt' uses this output of task ':spring-core:eclipseWstComponentSettings' 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.2/userguide/validation_problems.html#implicit_dependency for more details about this problem. This behaviour has been deprecated and is scheduled to be removed in Gradle 8.0. Execution optimizations are disabled to ensure correctness. See https://docs.gradle.org/7.2/userguide/more_about_tasks.html#sec:up_to_date_checks for more details.

Execution optimizations have been disabled for 2 invalid unit(s) of work during this build to ensure correctness.
Please consult deprecation warnings for more details.

Deliverables

  • [x] Fix deprecation warnings in the build for the eclipse Gradle task.
  • [x] Simplify ide.gradle -- for example, by removing support for Eclipse web tools which we no longer need.
  • [x] Update import-into-eclipse.md for 5.3.x
  • [x] Verify Java support
  • [x] Verify Groovy support
  • [x] ❌ Verify Kotlin support
  • [x] ❌ Verify AJDT support
  • [x] Update import-into-eclipse.md for main (6.0)
  • [x] Verify JDK 17 support
  • [x] ❌ Verify Groovy support
  • [x] ❌ Verify Kotlin support
  • [x] ❌ Verify AJDT support

Comment From: sbrannen

The Groovy Development Tools currently do no work with Eclipse 20210-09 and Java 17.

  • https://github.com/groovy/groovy-eclipse/issues/1303