Change project setup: split targets into different jars and relocate shadowed libs

This commit is contained in:
Blue (Lukas Rieger) 2020-03-30 01:45:32 +02:00
parent 0816529f25
commit 323cb1bc81
11 changed files with 109 additions and 25 deletions

View File

@ -13,3 +13,28 @@ dependencies {
compile group: 'org.bstats', name: 'bstats-bukkit-lite', version: '1.5'
compile project(':BlueMapCommon')
}
build.dependsOn shadowJar {
destinationDir = file '../build/release'
archiveFileName = "BlueMap-${version}-bukkit.jar"
relocate 'com.google', 'de.bluecolored.bluemap.google'
relocate 'com.flowpowered', 'de.bluecolored.bluemap.flowpowered'
relocate 'com.typesafe', 'de.bluecolored.bluemap.typesafe'
relocate 'net.querz', 'de.bluecolored.bluemap.querz'
relocate 'ninja', 'de.bluecolored.bluemap.ninja'
relocate 'org.apache', 'de.bluecolored.bluemap.apache'
relocate 'org.yaml', 'de.bluecolored.bluemap.yaml'
relocate 'org.bstats.bukkit', 'de.bluecolored.bluemap.bstats.bukkit'
}
processResources {
from(sourceSets.main.resources.srcDirs) {
include 'plugin.yml'
expand (
version: project.version
)
}
}

View File

@ -1,7 +1,7 @@
name: BlueMap
description: "A 3d-map of your Minecraft worlds view-able in your browser using three.js (WebGL)"
main: de.bluecolored.bluemap.bukkit.BukkitPlugin
version: 0.5.1-mc1.13
version: ${version}
author: "Blue (TBlueF / Lukas Rieger)"
authors: [Blue (TBlueF / Lukas Rieger)]
website: "https://github.com/BlueMap-Minecraft"

View File

@ -2,3 +2,22 @@ dependencies {
compile group: 'commons-cli', name: 'commons-cli', version: '1.4'
compile project(':BlueMapCommon')
}
jar {
manifest {
attributes 'Main-Class' : "de.bluecolored.bluemap.cli.BlueMapCLI"
}
}
build.dependsOn shadowJar {
destinationDir = file '../build/release'
archiveFileName = "BlueMap-${version}-cli.jar"
relocate 'com.google', 'de.bluecolored.bluemap.google'
relocate 'com.flowpowered', 'de.bluecolored.bluemap.flowpowered'
relocate 'com.typesafe', 'de.bluecolored.bluemap.typesafe'
relocate 'net.querz', 'de.bluecolored.bluemap.querz'
relocate 'ninja', 'de.bluecolored.bluemap.ninja'
relocate 'org.apache', 'de.bluecolored.bluemap.apache'
relocate 'org.yaml', 'de.bluecolored.bluemap.yaml'
}

View File

@ -25,7 +25,6 @@
import de.bluecolored.bluemap.common.MapType;
import de.bluecolored.bluemap.common.RenderManager;
import de.bluecolored.bluemap.common.plugin.serverinterface.ServerInterface;
import de.bluecolored.bluemap.core.BlueMap;
import de.bluecolored.bluemap.core.config.ConfigManager;
import de.bluecolored.bluemap.core.config.MainConfig;
import de.bluecolored.bluemap.core.config.MainConfig.MapConfig;
@ -48,7 +47,6 @@ public class Plugin {
public static final String PLUGIN_ID = "bluemap";
public static final String PLUGIN_NAME = "BlueMap";
public static final String PLUGIN_VERSION = BlueMap.VERSION;
private static Plugin instance;

View File

@ -16,6 +16,16 @@ dependencies {
testCompile 'junit:junit:4.12'
}
processResources {
from(sourceSets.main.resources.srcDirs) {
include 'core.json'
expand (
version: project.version
)
}
}
node {
version = '12.14.1'
download = true

View File

@ -1,7 +1,24 @@
package de.bluecolored.bluemap.core;
import java.io.IOException;
import de.bluecolored.bluemap.core.logger.Logger;
import ninja.leaping.configurate.gson.GsonConfigurationLoader;
public class BlueMap {
public static final String VERSION = "0.5.1-mc1.13";
public static final String VERSION;
static {
String version = "DEV";
try {
version = GsonConfigurationLoader.builder().setURL(BlueMap.class.getResource("/core.json")).build().load().getNode("version").getString("DEV");
} catch (IOException ex) {
Logger.global.logError("Failed to load core.json from resources!", ex);
}
if (version.equals("${version}")) version = "DEV";
VERSION = version;
}
}

View File

@ -0,0 +1,3 @@
{
"version": "${version}"
}

View File

@ -3,3 +3,26 @@ dependencies {
compile group: 'org.bstats', name: 'bstats-sponge-lite', version: '1.5'
compile project(':BlueMapCommon')
}
build.dependsOn shadowJar {
destinationDir = file '../build/release'
archiveFileName = "BlueMap-${version}-sponge.jar"
relocate 'com.google', 'de.bluecolored.bluemap.google'
relocate 'com.flowpowered', 'de.bluecolored.bluemap.flowpowered'
relocate 'com.typesafe', 'de.bluecolored.bluemap.typesafe'
relocate 'net.querz', 'de.bluecolored.bluemap.querz'
relocate 'ninja', 'de.bluecolored.bluemap.ninja'
relocate 'org.apache', 'de.bluecolored.bluemap.apache'
relocate 'org.yaml', 'de.bluecolored.bluemap.yaml'
}
processResources {
from(sourceSets.main.resources.srcDirs) {
include 'mcmod.info'
expand (
version: project.version
)
}
}

View File

@ -52,8 +52,7 @@
id = Plugin.PLUGIN_ID,
name = Plugin.PLUGIN_NAME,
authors = { "Blue (Lukas Rieger)" },
description = "This plugin provides a fully 3D map of your world for your browser!",
version = Plugin.PLUGIN_VERSION
description = "This plugin provides a fully 3D map of your world for your browser!"
)
public class SpongePlugin implements ServerInterface {

View File

@ -2,7 +2,7 @@
{
"modid": "bluemap",
"name": "BlueMap",
"version": "0.5.1-mc1.13",
"version": "${version}",
"description": "A 3d-map of your Minecraft worlds view-able in your browser using three.js (WebGL)",
"url": "https://github.com/BlueMap-Minecraft",
"authorList": [

View File

@ -23,25 +23,15 @@ allprojects {
compileTestJava.options.compilerArgs.add '-parameters'
apply plugin: 'java'
apply plugin: 'com.github.johnrengelman.shadow'
}
dependencies {
compile project(':BlueMapCLI')
compile project(':BlueMapBukkit')
//compile project(':BlueMapSponge')
}
assemble.dependsOn shadowJar {
relocate 'org.bstats.bukkit', 'de.bluecolored.bluemap.bstats.bukkit'
baseName = 'BlueMap'
version = null
classifier = null
group = 'de.bluecolored.bluemap'
version = '0.5.1-mc1.13'
}
jar {
manifest {
attributes 'Main-Class' : "de.bluecolored.bluemap.cli.BlueMapCLI"
}
subprojects {
apply plugin: 'com.github.johnrengelman.shadow'
apply plugin: 'java'
sourceCompatibility = 1.8
targetCompatibility = 1.8
}