TrigonicSolutions / gradle-rpm-plugin

Gradle plugin for constructing RPM packages.
Apache License 2.0
38 stars 19 forks source link

Plugin incompatible with gradle 1.7-rc-2 #42

Closed smgeorge99 closed 10 years ago

smgeorge99 commented 10 years ago

My project has been using this plugin since we were on gradle 1.5. Our project has since upgraded to gradle 1.6, and it works fine there as well. However, when I tried to run it against gradle 1.7-rc-2, I get the following exception:

Caused by: org.gradle.api.tasks.TaskInstantiationException: Could not create task of type 'Rpm'.
        at org.gradle.api.internal.project.taskfactory.TaskFactory$1.call(TaskFactory.java:115)
        at org.gradle.api.internal.project.taskfactory.TaskFactory$1.call(TaskFactory.java:110)
        at org.gradle.api.internal.AbstractTask.injectIntoNewInstance(AbstractTask.java:145)
        at org.gradle.api.internal.project.taskfactory.TaskFactory.createTaskObject(TaskFactory.java:110)
        at org.gradle.api.internal.project.taskfactory.TaskFactory.createTask(TaskFactory.java:70)
        at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory.createTask(AnnotationProcessingTa
skFactory.java:100)
        at org.gradle.api.internal.project.taskfactory.DependencyAutoWireTaskFactory.createTask(DependencyAutoWireTaskFa
ctory.java:39)
        at org.gradle.api.internal.tasks.DefaultTaskContainer.create(DefaultTaskContainer.java:55)
        at org.gradle.api.internal.project.AbstractProject.task(AbstractProject.java:912)
        at org.gradle.api.internal.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:248)
        at org.gradle.api.internal.BeanDynamicObject.invokeMethod(BeanDynamicObject.java:136)
        at org.gradle.api.internal.CompositeDynamicObject.invokeMethod(CompositeDynamicObject.java:147)
        at org.gradle.groovy.scripts.BasicScript.methodMissing(BasicScript.java:83)
        at build_1q0vdf37kt70qi5s07ijhsm3d9.run(C:\Promontory\BAP\software\services\build.gradle:50)
        at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory
.java:52)
        ... 51 more
Caused by: java.lang.NoSuchMethodError: org.gradle.api.internal.file.copy.CopyActionImpl.<init>(Lorg/gradle/api/internal
/file/FileResolver;Lorg/gradle/api/internal/file/copy/CopySpecVisitor;)V
        at com.trigonic.gradle.plugins.rpm.Rpm$RpmCopyAction.<init>(Rpm.groovy:154)
        at com.trigonic.gradle.plugins.rpm.Rpm.<init>(Rpm.groovy:62)
        at com.trigonic.gradle.plugins.rpm.Rpm_Decorated.<init>(Unknown Source)
        at org.gradle.api.internal.DependencyInjectingInstantiator.newInstance(DependencyInjectingInstantiator.java:62)
        at org.gradle.api.internal.ClassGeneratorBackedInstantiator.newInstance(ClassGeneratorBackedInstantiator.java:36
)
        at org.gradle.api.internal.project.taskfactory.TaskFactory$1.call(TaskFactory.java:113)
        ... 65 more
seanjreilly commented 10 years ago

I've just posted a bug report for this issue to the gradle dev list, and according to them, the problem is that the plugin uses the gradle internal API.

The steer seems to be that gradle plugins shouldn't use the internal api, as it's not backwards compatible.

david-resnick commented 10 years ago

This issue is duplicated by the more general #44

AlanKrueger commented 10 years ago

Agreed. Closing in favor of #44.