Skip to content

Project Setup

Risto Lahtela edited this page Jan 17, 2019 · 35 revisions

Plan Header

Project Set-Up

Page version: 4.6.0

  1. Fork the Plan repository & Clone that repository to your workstation.
    Here is a Tutorial.

  2. Open /Plan/ project folder inside the repository you just downloaded in your favorite IDE.
    Most IDEs will sync the workspace and you can start working on the project.

If you're having issues join Discord or open an issue and I'll help you out.

Building

The project is split into 6 modules.

Module Description
common System related abstractions and main logic is in this package. Most work is done here.
bukkit Bukkit/Spigot/Paper related classes
bungee BungeeCord related classes
sponge Sponge related classes
velocity Velocity related classes
plugin Module for shading all other modules into a single jar

Plan uses Dagger for dependency injection.

Your IDE may be complaining about DaggerPlanBukkitComponent or another Dagger###Component class not being available.
Make sure that /<module>/build/generated/ is included as a Generated Sources root.

Building and testing

To build a new plugin artifact to use on servers, use

gradle shadowJar

The artifact will be placed in /repo_root/Plan/builds/

To run tests, use

gradle test

To run CheckStyle checks run

gradle checkstyleMain checkstyleTest

PlanPluginBridge Project Setup

IMPORTANT

This is not required to work on Plan, and is only required if you want to change things inside PlanPluginBridge

Since PlanPluginBridge uses a collection of other plugins, some of them can not be found in any maven repositories.

Clone this wiki locally