mirror of
https://github.com/plexusorg/Plex-FAWE.git
synced 2024-11-02 02:47:11 +00:00
52 lines
2.3 KiB
Markdown
52 lines
2.3 KiB
Markdown
Compiling
|
|
=========
|
|
|
|
You can compile FastAsyncWorldEdit as long as you have some version of Java greater than or equal to 16 installed. Gradle will download JDK 16 specifically if needed,
|
|
but it needs some version of Java to bootstrap from.
|
|
|
|
Note that if you have JRE 8 installed, Gradle will currently attempt to use that to compile, which will not work. It is easiest to uninstall JRE 8 and replace it with JDK 16.
|
|
|
|
You can get the JDK 16 [here](https://adoptopenjdk.net/?variant=openjdk16&jvmVariant=hotspot).
|
|
|
|
The build process uses Gradle, which you do *not* need to download. FastAsyncWorldEdit is a multi-module project with three active modules:
|
|
|
|
* `worldedit-core` contains the FastAsyncWorldEdit API
|
|
* `worldedit-bukkit` is the Bukkit plugin
|
|
* `worldedit-cli` is the command line interface
|
|
|
|
## To compile...
|
|
|
|
### NMS
|
|
FastAsyncWorldEdit uses NMS (net.minecraft.server) code in a variety of spots. NMS is not distributed via maven and therefore FastAsyncWorldEdit may not build without errors if you didn't install it into your local repository beforehand.
|
|
You can do that by either running Spigot's [BuildTools](https://www.spigotmc.org/wiki/buildtools/) targeting the versions needed or using Paper's [paperclip](https://papermc.io/downloads) with `java -Dpaperclip.install=true -jar paperclip.jar`.
|
|
|
|
### On Windows
|
|
|
|
1. Shift + right-click the folder with FastAsyncWorldEdit's files and click "Open command prompt".
|
|
2. `gradlew clean build`
|
|
|
|
### On Linux, BSD, or Mac OS X
|
|
|
|
1. In your terminal, navigate to the folder with FastAsyncWorldEdit's files (`cd /folder/of/fawe/files`)
|
|
2. `./gradlew clean build`
|
|
|
|
## Then you will find...
|
|
|
|
You will find:
|
|
|
|
* The core FastAsyncWorldEdit API in **worldedit-core/build/libs**
|
|
* FastAsyncWorldEdit for Bukkit in **worldedit-bukkit/build/libs**
|
|
* the CLI version in **worldedit-cli/build/libs**
|
|
|
|
If you want to use FastAsyncWorldEdit, use the `FastAsyncWorldEdit-1.17-<commitHash>` version obtained in **worldedit-bukkit/build/libs**.
|
|
|
|
(The `-#` version includes FastAsyncWorldEdit + necessary libraries.)
|
|
|
|
## Other commands
|
|
|
|
* `gradlew idea` will generate an [IntelliJ IDEA](http://www.jetbrains.com/idea/) module for each folder.
|
|
|
|
_Possibly broken_:
|
|
* `gradlew eclipse` will generate an [Eclipse](https://www.eclipse.org/downloads/) project for each folder.
|
|
|