Slackbot
02/23/2023, 3:44 PMPhilip W
02/23/2023, 3:45 PMorg.gradle.api.plugins.UnknownPluginException: Plugin [id: 'app.softwork.gradle.bug.publishedSettingsPlugin'] was not found in any of the following sources:
- Gradle Core Plugins (plugin is not in 'org.gradle' namespace)
- Included Builds (None of the included builds contain this plugin)
- Plugin Repositories (plugin dependency must include a version number for this source)
Vampire
02/23/2023, 4:26 PMincludeBuild("gradle-logic/plugin-testing")
in your root build settings script.Philip W
02/23/2023, 7:57 PMPhilip W
02/23/2023, 8:00 PMVampire
02/23/2023, 8:36 PMgradle-logic
and that would bring the plugin-testing
plugin onto the class path as dependency, it would probably be found.Philip W
02/23/2023, 8:50 PMVampire
02/23/2023, 9:24 PMVampire
02/23/2023, 9:24 PMPhilip W
02/23/2023, 9:32 PMVampire
02/23/2023, 9:34 PMPhilip W
02/23/2023, 9:39 PMpublished
dependency, containg a settings plugin too. I added the dependency to the real artifact notation in the build-logic build script, and want to use the settings plugin in the root settings file, like in the sample. But I always get the error, the settings plugin is not found:
- Gradle Core Plugins (plugin is not in 'org.gradle' namespace)
- Plugin Repositories (plugin dependency must include a version number for this source)
Interessting the line Included Builds (None of the included builds contain this plugin)
is missing, so how does Gradle "see" which dependency/included build provides the plugin ids? Does Gradle parse the meta-inf/services of each jar?Philip W
02/23/2023, 9:42 PMbuild-logic/build.gradle.kts
is found and the plugin is applied (using service loader). How can I debug this behavior?Vampire
02/23/2023, 10:28 PMPhilip W
02/24/2023, 9:47 AMPhilip W
02/24/2023, 9:54 AMid("app.softwork.kobol.versions")
in the rootSettings file.Vampire
02/24/2023, 12:21 PMplugins { ... }
just by adding it to the class path.
You could either apply it in a convention plugin in build-logic
and apply that convention plugin in your root build,
or you could apply it the legacy way using apply(plugin = "app.softwork.kobol.versions")
outside the plugins { ... }
block.Philip W
02/24/2023, 12:32 PMVampire
02/24/2023, 12:33 PMVampire
02/24/2023, 12:34 PMplugins { ... }
block the plugin must either come from one of the plugin repositories or built in a build included from the plugin management blockPhilip W
02/24/2023, 12:39 PMinclude(":published")
so it uses the local script and not the published one, stupid mistake. Thanks, finally understand why the reproducer works.