questionsx3
questionsx3

Reputation: 23

Gradle error: java.lang.String cannot be cast to org.gradle.api.artifacts.Configuration

I'm following this Spring tutorial and I'm stuck on the first step.

I cloned the tutorial repository and tried to run my first Gradle tasks:

$ git clone https://github.com/spring-guides/tut-rest.git
$ cd tut-rest/initial
$ ./gradlew clean test --stacktrace

This is the error that I got:

org.gradle.api.GradleScriptException: A problem occurred evaluating root project 'initial'.
at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:54)
at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:187)
at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:39)
at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:26)
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:470)
at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:79)
at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:31)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:128)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:105)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:85)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:81)
at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:33)
at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:24)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:39)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:29)
at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:50)
at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.java:171)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:237)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:210)
at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:35)
at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:206)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:169)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
at org.gradle.launcher.Main.doAction(Main.java:33)
at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:54)
at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:35)
at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
at org.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:33)
at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:130)
at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:48)

Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to org.gradle.api.artifacts.Configuration
at org.gradle.api.artifacts.Configuration$Namer.determineName(Configuration.java:87)
at org.gradle.api.internal.DefaultNamedDomainObjectCollection.add(DefaultNamedDomainObjectCollection.java:70)
at java_util_Set$add.call(Unknown Source)
at org.springframework.build.gradle.propdep.PropDepsPlugin.addConfiguration(PropDepsPlugin.groovy:54)
at org.springframework.build.gradle.propdep.PropDepsPlugin.this$2$addConfiguration(PropDepsPlugin.groovy)
at org.springframework.build.gradle.propdep.PropDepsPlugin$this$2$addConfiguration.callCurrent(Unknown Source)
at org.springframework.build.gradle.propdep.PropDepsPlugin.apply(PropDepsPlugin.groovy:41)
at org.springframework.build.gradle.propdep.PropDepsPlugin.apply(PropDepsPlugin.groovy)
at org.gradle.api.internal.plugins.DefaultPluginContainer.providePlugin(DefaultPluginContainer.java:110)
at org.gradle.api.internal.plugins.DefaultPluginContainer.addPluginInternal(DefaultPluginContainer.java:69)
at org.gradle.api.internal.plugins.DefaultPluginContainer.apply(DefaultPluginContainer.java:35)
at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.applyPlugin(DefaultObjectConfigurationAction.java:117)
at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.access$200(DefaultObjectConfigurationAction.java:36)
at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction$3.run(DefaultObjectConfigurationAction.java:85)
at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.execute(DefaultObjectConfigurationAction.java:130)
at org.gradle.api.internal.project.AbstractPluginAware.apply(AbstractPluginAware.java:41)
at org.gradle.api.Project$apply$0.call(Unknown Source)
at org.gradle.api.internal.project.ProjectScript.apply(ProjectScript.groovy:34)
at org.gradle.api.Script$apply$0.callCurrent(Unknown Source)
at build_2adlb8a21ubaha3t8bdi7pcekq.run(/home/b/Repos/tut-rest/initial/build.gradle:6)
at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:52)
... 34 more

All I changed in the codebase is that I updated Gradle wrapper from version 1.6 to version 2.0, because using 1.6 was giving me some warning, but I was getting the same casting error before the upgrade.

How do I solve this error?

Upvotes: 2

Views: 9164

Answers (2)

beresfordt
beresfordt

Reputation: 5222

If you update:

dependencies {
    classpath 'org.gradle.api.plugins:gradle-tomcat-plugin:0.9.8'
    classpath 'org.springframework.build.gradle:propdeps-plugin:0.0.1'
}

to

dependencies {
    classpath 'org.gradle.api.plugins:gradle-tomcat-plugin:0.9.9'
    classpath 'org.springframework.build.gradle:propdeps-plugin:0.0.7'
}

then you can run with gradle 2.0

Upvotes: 7

Bill Lin
Bill Lin

Reputation: 1155

It seems you have problem with: 'org.springframework.build.gradle:propdeps-plugin:0.0.1' and gradle 2.0 which may not compatible with each other.

I will suggest you try following combinations: 'org.springframework.build.gradle:propdeps-plugin:0.0.6' + gradle 1.12 or 2.0

Upvotes: 2

Related Questions