Plugin

@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class Plugin(@Pattern(value = "[a-z][a-z0-9-_]{0,63}") val id: String, val name: String = "", val version: String = "", val description: String = "", val authors: Array<String> = [], val dependencies: Array<Dependency> = [])

A metadata annotation used to describe a plugin.

This has to go on the plugin's main class, and it will be the injection point for the plugin. This is similar in functionality to the standard JVM entry point of the main method.

Parameters

id

the identifier for this plugin

name

the human readable name of this plugin

version

the version of this plugin, or empty for undefined

description

the description of this plugin, explaining what it can be used for

authors

a list of people who helped create this plugin

dependencies

a list of other plugins that this plugin depends on

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val id: String
Link copied to clipboard
Link copied to clipboard