I have some test cases written against a custom plugin that I wrote. They passed with MS-3, but are now failing (I’m guessing because of a classpath issue) with MS-5. The plugin is used for code generation via XJC.
My test case starts with
Project project = ProjectBuilder.builder().build()
when: 'xjc is applied without java plugin, and an XJC configuration is added'
project.apply plugin: 'xjc'
In src/main/resources/META-INF/gradle-plugins, I have xjc.properties which contains the line
implementation-class=my.package.XJCPlugin
On the
project.apply plugin: 'xjc'
line though, the test case fails with
org.gradle.api.plugins.PluginInstantiationException: Could not find implementation class ‘null’ for plugin ‘xjc’ specified in file:/my/project/directory/GradlePlugins/subprojects/xjc/build/classes/main/META-INF/gradle-plugins/xjc.properties.
at org.gradle.api.internal.plugins.DefaultPluginRegistry.getTypeForId(DefaultPluginRegistry.java:102)
at org.gradle.api.internal.plugins.DefaultPluginRegistry.getTypeForId(DefaultPluginRegistry.java:76)
at org.gradle.api.internal.plugins.DefaultProjectsPluginContainer.getTypeForId(DefaultProjectsPluginContainer.java:102)
at org.gradle.api.internal.plugins.DefaultProjectsPluginContainer.apply(DefaultProjectsPluginContainer.java:37)
at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.applyPlugin(DefaultObjectConfigurationAction.java:101)
at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.execute(DefaultObjectConfigurationAction.java:114)
at org.gradle.api.internal.project.AbstractProject.apply(AbstractProject.java:841)
at my.package.XJCPluginTest.default source directory is defined when java plugin is added(XJCPluginTest.groovy:41) Caused by: java.lang.ClassNotFoundException: my.package.XJCPlugin not found.
at org.gradle.util.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:51)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at org.gradle.api.internal.plugins.DefaultPluginRegistry.getTypeForId(DefaultPluginRegistry.java:100)
… 7 more