This is an updated (LITE) Version of CS-CoreLib. Instead of being a dependency, it should be shaded instead.
This part presupposes that you have Maven installed and know how to handle your pom.xml
CS-CoreLib2 just sits here on GitHub, so you can use the jitpack.io repository for this.
Add this part into your <repositories>
section.
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
Now you can add the dependency itself, for this you add the following into your <dependencies>
section.
You can use "master-SNAPSHOT" to always use the latest Version, otherwise have a look on GitHub Tags to find all available Version numbers you could use.
<dependency>
<groupId>com.github.thebusybiscuit</groupId>
<artifactId>CS-CoreLib2</artifactId>
<version>master-SNAPSHOT</version>
</dependency>
This Step is the most important and also the most easiest to mess up.
Add the following to your <builds>
section:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.2.1</version>
<configuration>
<relocations>
<relocation>
<pattern>io.github.thebusybiscuit.cscorelib2</pattern>
<shadedPattern>YOUR.PACKAGE.NAME.HERE.cscorelib2</shadedPattern>
</relocation>
</relocations>
<filters>
<!-- This will become important in Step 4 -->
</filters>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
It is very important that you changed your <shadedPattern>
tag to a path WITHIN your project.
(e.g. com.something.project.cscorelib2 )
Now you just need to select the packages you want to include.
You can find a list of all available packages in the wiki or on the bottom of this page.
Once you found the ones you need, add their package as an <include>
tag like this:
<filters>
<filter>
<artifact>com.github.thebusybiscuit:CS-CoreLib2</artifact>
<includes>
<include>**/cscorelib2/config/**</include>
<include>**/cscorelib2/updater/**</include>
</includes>
</filter>
</filters>
Your pom.xml should now look like this:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>me.somebody</groupId>
<artifactId>pluginname</artifactId>
<version>1.0</version>
<repositories>
<repository>
<id>spigot-repo</id>
<url>https://hub.spigotmc.org/nexus/content/groups/public/</url>
</repository>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependencies>
<!-- You are probably going to be using Bukkit, Spigot or something like that -->
<dependency>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
<version>1.14.2-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.github.thebusybiscuit</groupId>
<artifactId>CS-CoreLib2</artifactId>
<version>master-SNAPSHOT</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.2.1</version>
<configuration>
<relocations>
<relocation>
<pattern>io.github.thebusybiscuit.cscorelib2</pattern>
<shadedPattern>me.somebody.pluginname.cscorelib2</shadedPattern>
</relocation>
</relocations>
<filters>
<filter>
<artifact>com.github.thebusybiscuit:CS-CoreLib2</artifact>
<includes>
<include>**/thebusybiscuit/cscorelib2/config/**</include>
<include>**/thebusybiscuit/cscorelib2/updater/**</include>
</includes>
</filter>
</filters>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
This Library contains the following Packages: See our Wiki for more Info on what each Package does.
IMPORTANT: Some Packages also require other packages, check the Wiki for more Info.
<include>**/thebusybiscuit/cscorelib2/config/**</include>
<include>**/thebusybiscuit/cscorelib2/updater/**</include>
<include>**/thebusybiscuit/cscorelib2/database/**</include>
<include>**/thebusybiscuit/cscorelib2/reflection/**</include>
<include>**/thebusybiscuit/cscorelib2/protection/**</include>
<include>**/thebusybiscuit/cscorelib2/math/**</include>
<include>**/thebusybiscuit/cscorelib2/inventory/**</include>
<include>**/thebusybiscuit/cscorelib2/item/**</include>
<include>**/thebusybiscuit/cscorelib2/skull/**</include>