diff --git a/proxy/src/main/java/com/velocitypowered/proxy/config/VelocityConfiguration.java b/proxy/src/main/java/com/velocitypowered/proxy/config/VelocityConfiguration.java index dfd007ac..6f0fb61c 100644 --- a/proxy/src/main/java/com/velocitypowered/proxy/config/VelocityConfiguration.java +++ b/proxy/src/main/java/com/velocitypowered/proxy/config/VelocityConfiguration.java @@ -515,7 +515,7 @@ public class VelocityConfiguration implements ProxyConfig { String forwardingSecretString = System.getenv().getOrDefault( "VELOCITY_FORWARDING_SECRET", ""); - if (forwardingSecretString.isEmpty()) { + if (forwardingSecretString.isBlank()) { final String forwardSecretFile = config.get("forwarding-secret-file"); final Path secretPath = forwardSecretFile == null ? defaultForwardingSecretPath @@ -528,7 +528,11 @@ public class VelocityConfiguration implements ProxyConfig { "The file " + forwardSecretFile + " is not a valid file or it is a directory."); } } else { - throw new RuntimeException("The forwarding-secret-file does not exist."); + Files.createFile(secretPath); + Files.writeString(secretPath, forwardingSecretString = generateRandomString(12), + StandardCharsets.UTF_8); + logger.info("The forwarding-secret-file does not exist. A new file has been created at {}", + forwardSecretFile); } } final byte[] forwardingSecret = forwardingSecretString.getBytes(StandardCharsets.UTF_8);