diff --git a/BlueMapBukkit/build.gradle b/BlueMapBukkit/build.gradle index c8d6a719..8a60c1b2 100644 --- a/BlueMapBukkit/build.gradle +++ b/BlueMapBukkit/build.gradle @@ -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 + ) + } +} diff --git a/BlueMapBukkit/src/main/resources/plugin.yml b/BlueMapBukkit/src/main/resources/plugin.yml index 5b985d3d..cb480054 100644 --- a/BlueMapBukkit/src/main/resources/plugin.yml +++ b/BlueMapBukkit/src/main/resources/plugin.yml @@ -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" diff --git a/BlueMapCLI/build.gradle b/BlueMapCLI/build.gradle index 0820d22c..8690bfb2 100644 --- a/BlueMapCLI/build.gradle +++ b/BlueMapCLI/build.gradle @@ -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' +} \ No newline at end of file diff --git a/BlueMapCommon/src/main/java/de/bluecolored/bluemap/common/plugin/Plugin.java b/BlueMapCommon/src/main/java/de/bluecolored/bluemap/common/plugin/Plugin.java index 5d1274a2..fe55f67b 100644 --- a/BlueMapCommon/src/main/java/de/bluecolored/bluemap/common/plugin/Plugin.java +++ b/BlueMapCommon/src/main/java/de/bluecolored/bluemap/common/plugin/Plugin.java @@ -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; diff --git a/BlueMapCore/build.gradle b/BlueMapCore/build.gradle index cbd52a0b..c01e874d 100644 --- a/BlueMapCore/build.gradle +++ b/BlueMapCore/build.gradle @@ -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 diff --git a/BlueMapCore/src/main/java/de/bluecolored/bluemap/core/BlueMap.java b/BlueMapCore/src/main/java/de/bluecolored/bluemap/core/BlueMap.java index 00215616..8a3c0790 100644 --- a/BlueMapCore/src/main/java/de/bluecolored/bluemap/core/BlueMap.java +++ b/BlueMapCore/src/main/java/de/bluecolored/bluemap/core/BlueMap.java @@ -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; + } } diff --git a/BlueMapCore/src/main/resources/core.json b/BlueMapCore/src/main/resources/core.json new file mode 100644 index 00000000..553d0990 --- /dev/null +++ b/BlueMapCore/src/main/resources/core.json @@ -0,0 +1,3 @@ +{ + "version": "${version}" +} \ No newline at end of file diff --git a/BlueMapSponge/build.gradle b/BlueMapSponge/build.gradle index 88c19eb9..b057d7c1 100644 --- a/BlueMapSponge/build.gradle +++ b/BlueMapSponge/build.gradle @@ -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 + ) + } +} diff --git a/BlueMapSponge/src/main/java/de/bluecolored/bluemap/sponge/SpongePlugin.java b/BlueMapSponge/src/main/java/de/bluecolored/bluemap/sponge/SpongePlugin.java index 8c070220..7cce4a0f 100644 --- a/BlueMapSponge/src/main/java/de/bluecolored/bluemap/sponge/SpongePlugin.java +++ b/BlueMapSponge/src/main/java/de/bluecolored/bluemap/sponge/SpongePlugin.java @@ -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 { diff --git a/BlueMapCommon/src/main/resources/mcmod.info b/BlueMapSponge/src/main/resources/mcmod.info similarity index 92% rename from BlueMapCommon/src/main/resources/mcmod.info rename to BlueMapSponge/src/main/resources/mcmod.info index c9076764..a5115ef5 100644 --- a/BlueMapCommon/src/main/resources/mcmod.info +++ b/BlueMapSponge/src/main/resources/mcmod.info @@ -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": [ diff --git a/build.gradle b/build.gradle index 8a18b431..9cd62bee 100644 --- a/build.gradle +++ b/build.gradle @@ -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 }