Skip to content

OctoPvP/Commander

Repository files navigation

Commander

A universal java command parsing library

Building

This project uses Gradle.

  1. Clone this repository: git clone https://github.com/OctoPvP/Commander
  2. Run ./gradlew build, optionally add publishToMavenLocal if you would like to install it into your ~/.m2 (Maven cache) directory

Important

To allow command argument names to work correctly, you need to pass -parameters to your compiler
Alternatively, you can use the @Name annotation.

Maven:

<plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>${maven-compiler-plugin.version}</version>
        <configuration>
            <parameters>true</parameters>
        </configuration>
    </plugin>
</plugins>

Gradle (Groovy):

compileJava {
    options.compilerArgs << '-parameters'
}

Gradle (KTS):

tasks.compileJava {
    options.compilerArgs.add("-parameters")
}

Usage

Implementation Link
Creating An Implementation Here
Bukkit Here

Features

  • Annotation based commands
  • Dependency Injection in command methods
  • Argument parsing into Objects through Providers
  • Command suggestions
  • Flags & Switches
  • Customizable Messages
  • Validators

License

See LICENSE

About

Yet another Java annotation-based command parsing library, with Dependency Injection inspired by Guice

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published

Languages