Gradle 9 project.getProperties() has been deprecated:
> Task :graphql-gradle-plugin3:compileJava
…/graphql-gradle-plugin-project/graphql-gradle-plugin3/src/main/java/com/graphql_java_generator/gradleplugin/GraphQLPlugin.java:153: warning: [deprecation] getProperties() in Project has been deprecated
SourceSet main = ((SourceSetContainer) project.getProperties().get("sourceSets"))
^
…/graphql-gradle-plugin-project/graphql-gradle-plugin3/src/main/java/com/graphql_java_generator/gradleplugin/GraphQLPlugin.java:290: warning: [deprecation] getProperties() in Project has been deprecated
SourceSet main = ((SourceSetContainer) project.getProperties().get("sourceSets"))
^
2 warnings
Should be fixable with:
diff --git a/graphql-gradle-plugin3/src/main/java/com/graphql_java_generator/gradleplugin/GraphQLPlugin.java b/graphql-gradle-plugin3/src/main/java/com/graphql_java_generator/gradleplugin/GraphQLPlugin.java
index 7fbbc1f..72d30f1 100644
--- a/graphql-gradle-plugin3/src/main/java/com/graphql_java_generator/gradleplugin/GraphQLPlugin.java
+++ b/graphql-gradle-plugin3/src/main/java/com/graphql_java_generator/gradleplugin/GraphQLPlugin.java
@@ -150,8 +150,7 @@ public class GraphQLPlugin implements Plugin<Project> {
if (task instanceof GenerateCodeCommonTask) {
GenerateCodeCommonTask t = (GenerateCodeCommonTask) task;
// Let's add the folders where the sources and resources have been generated to the project
- SourceSet main = ((SourceSetContainer) project.getProperties().get("sourceSets"))
- .getByName(SourceSet.MAIN_SOURCE_SET_NAME);
+ SourceSet main = getMainSourceSet(project);
main.getJava().srcDir(t.getTargetSourceFolder());
addGeneratedResourceFolder(project, task, t.getTargetResourceFolder());
@@ -182,6 +181,17 @@ public class GraphQLPlugin implements Plugin<Project> {
return getProperties().get("graphqlMavenPluginLogic.version").toString();
}
+ /**
+ * Get the main sourceSet of the project.
+ *
+ * @param project the project
+ * @return the main sourceSet of the project
+ */
+ private SourceSet getMainSourceSet(Project project) {
+ return project.getExtensions().getByType(SourceSetContainer.class)
+ .getByName(SourceSet.MAIN_SOURCE_SET_NAME);
+ }
+
/** Manual reading of the application.properties file, as this is not a spring boot project. */
private Properties getProperties() {
if (properties == null) {
@@ -287,8 +297,7 @@ public class GraphQLPlugin implements Plugin<Project> {
/** Add the given resource folder to the resource folders list, if it wasn't already added. */
private void addGeneratedResourceFolder(Project project, Task task, File newResourcFolder) {
- SourceSet main = ((SourceSetContainer) project.getProperties().get("sourceSets"))
- .getByName(SourceSet.MAIN_SOURCE_SET_NAME);
+ SourceSet main = getMainSourceSet(project);
String newResourceFolder = newResourcFolder.getAbsolutePath();
java.util.Optional<File> existingResourceFolder = main.getResources().getFiles().stream()
.filter(f -> f.getAbsolutePath().equals(newResourceFolder)).findFirst();
Gradle 9
project.getProperties()has been deprecated:Should be fixable with: