Skip to content

Commit

Permalink
Add jar version and commit date to startup message
Browse files Browse the repository at this point in the history
  • Loading branch information
Melledy committed Dec 7, 2023
1 parent 9ca364a commit 8ce4a64
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 7 deletions.
13 changes: 11 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ compileTestJava.options.encoding = "UTF-8"
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17

version = '1.0.0'
version = '1.0.1'

var shouldGenerateProto = System.getenv("GENERATE_PROTO") == "true"
System.out.println(shouldGenerateProto ?
Expand Down Expand Up @@ -174,7 +174,15 @@ tasks.register('injectGitHash') {
try {
return 'git rev-parse --verify --short HEAD'.execute().text.trim()
} catch (ignored) {
return 'GIT_NOT_FOUND'
return ''
}
}

def gitCommitTime = {
try {
return 'git log -1 --format=%cd --date=iso'.execute().text.trim()
} catch (ignored) {
return ''
}
}

Expand All @@ -184,6 +192,7 @@ package emu.lunarcore;
public final class BuildConfig {
public static final String VERSION = \"${version}\";
public static final String GIT_HASH = \"${gitCommitHash()}\";
public static final String GIT_HASH_TIME = \"${gitCommitTime()}\";
}
"""
}
Expand Down
29 changes: 24 additions & 5 deletions src/main/java/emu/lunarcore/LunarCore.java
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ public class LunarCore {

public static void main(String[] args) {
// Start Server
LunarCore.getLogger().info("Starting Lunar Core...");
LunarCore.getLogger().info("Starting Lunar Core " + getJarVersion());
LunarCore.getLogger().info("Git hash: " + getGitHash());
LunarCore.getLogger().info("Game version: " + GameConstants.VERSION);
boolean generateHandbook = true;
Expand Down Expand Up @@ -197,13 +197,32 @@ public static void saveConfig() {
}
}

// Git hash
// Build Config

private static String getJarVersion() {
// Safely get the build config class without errors even if it hasnt been generated yet
try {
Class<?> buildConfig = Class.forName(LunarCore.class.getPackageName() + ".BuildConfig");
return buildConfig.getField("VERSION").get(null).toString();
} catch (Exception e) {
// Ignored
}
return "";
}

private static String getGitHash() {
// Safely get the build config without errors even if it hasnt been generated yet
// Safely get the build config class without errors even if it hasnt been generated yet
try {
Class<?> buildConfig = Class.forName("emu.lunarcore.BuildConfig");
return buildConfig.getField("GIT_HASH").get(null).toString();
Class<?> buildConfig = Class.forName(LunarCore.class.getPackageName() + ".BuildConfig");

String hash = buildConfig.getField("GIT_HASH").get(null).toString();
String date = buildConfig.getField("GIT_HASH_TIME").get(null).toString();

if (date == null || date.isEmpty()) {
return hash;
}

return hash + " (" + date + ")";
} catch (Exception e) {
// Ignored
}
Expand Down

0 comments on commit 8ce4a64

Please sign in to comment.