Skip to content

How to build BeautyQuests

SkytAsul edited this page Sep 29, 2023 · 3 revisions

How to build the plugin?

Building the plugin by yourself may be useful if you want to make changes to the code that will stay private. Here is how to do so.


First step: downloading sources

Firstly, you'll need to download the sources on your computer. For this, download the ZIP file from here or clone the Git repository with this link: https://github.com/SkytAsul/BeautyQuests.git.


Second step: setup maven project

There is a lot of tutorials on how to do that on the Web, so I will not explain everything. Just now that BeautyQuests is a project with modules: it means that the api, the implementation, the distribution and the NMS modules have separated pom.xml files (and a parent one). Please pay attention to that.


Third step: Manage unused libraries

BeautyQuests has a lot of integrations, and some of them are premium plugins or do not have maven repositories.

The workaround used to implement those integrations in the code is to force maven to install JARs in your local workspace. To facilitate the manipulations, I created this script which can be ran with the arguments <maven binary path> <jars directory>.

Most integrations are grouped together in the integrations maven module, which makes it easier to deal with.

If you don't want to package any of the integrations in the build you are doing, simply exclude the integrations module and you'll be good. Otherwise, if you simply want to remove some integrations, follow those steps:

Maven manipulation

Remove the sections concerning the dependencies you want to exclude from integrations/pom.xml.

Code manipulation

Each dependency has an associated class file, in the package fr.skytasul.quests.integrations, usually named after the name of the plugin. You can delete every classes that are no longer used after the previous instructions. After that, go to fr.skytasul.quests.integrations.IntegrationsLoader and delete each piece of code corresponding to previously removed dependencies.


Finale step: Building!

Now you can finally build the plugin! mvn clean install should do it. The JAR that can be put in the /plugins folder of your server is generated under /target.