Someone awhile ago had mentioned a Kotlin template for plugins,
so I went ahead and made one (partially for myself)
It’s a GitHub template, so it will need some minor modification
for you to make it your own, this is all documented in the projects README
The template is for API8+ and supports multiple projects that may vary in versions as well.
Dependencies
The template also depends on McKotlin to provide Kotlin runtime.
So make sure you provide that when testing your plugins!
This also means that (at the time of writing) Kotlin 1.9.23
is the target version!
Features
What kind of features does a template even have?
buildSrc
buildSrc
contains a couple precompiled scripts to make making projects easier!
common
provides the Kotlin dependency and a couple toolchain configurations
spongeplugin
Provides the common script and applies common SpongeGradle configurations
shadow
Provides the Shadow gradle plugin and some basic configurations for its use
Multiple Projects
Simply add a directory to projects
and gradle will attempt to include it.
This is thanks to some configurations made in settings.gradle.kts
What needs changed?
I wrote a readme that covers the changes needed
However, all spots should be marked with a todo
and/or marked with replaceme