Whole ecosystems built on top of the best okaeri packages.
-
Based on dependency injection/beans/components schema:
@Component
registration with@Register
or@Scan
- automatic field/constructor injection and bean creation
-
Lots of platform specific utilities:
- register platform specific services as components
- use commons for the most boring tasks and cleaner code
- okaeri-poly: Minecraft scripting plugin with the support for Groovy, JavaScript, and Python — a great addition to traditional plugins and a rapid prototyping tool
- okaeri-minecraft: Minecraft plugins built for various okaeri services, based around integrating Minecraft servers with the WEB APIs
# platform
─ core
└─ minecraft
├─ bukkit
├─ velocity
└─ bungee
└─ standalone
├─ web
└─ cli
# extensions
─ ext-scheduler-quartz
- Minecraft
- bukkit: your platform of choice for best Spigot/Paper development experience (beta - possible breaking changes)
- velocity: your platform of choice for unified Velocity development experience (alpha - missing features, possible breaking changes)
- bungee: your platform of choice for best BungeeCord development experience (beta - possible breaking changes)
- Standalone
Okaeri Platform is a private use first project, not a public benefit project, and should be treated as such, the documentation might be non-existing or lacking. Feel free to explore README files of supported platforms for some basic guidance and Real-life use cases projects. You can search for or make any okaeri-platform related questions in discussions.
It is highly recommended to use -parameters
compiler flag for better overall feature support.
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<compilerArgs>
<arg>-parameters</arg>
</compilerArgs>
</configuration>
</plugin>
</plugins>
</build>
<build>
<plugins>
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
<version>${kotlin.version}</version>
<!-- ... -->
<configuration>
<!-- ... -->
<args>
<arg>-java-parameters</arg>
</args>
</configuration>
</plugin>
</plugins>
</build>
compileJava {
options.compilerArgs << '-parameters'
}
compileKotlin {
kotlinOptions {
javaParameters = true
}
}