Mirror von
https://github.com/PaperMC/Paper.git
synchronisiert 2024-12-19 04:50:06 +01:00
Added new --noconsole command argument, thanks to mkurzeja for the idea
Dieser Commit ist enthalten in:
Ursprung
13561bca9c
Commit
589f66bd1b
@ -4,6 +4,8 @@ import java.io.BufferedReader;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStreamReader;
|
||||
|
||||
import static org.bukkit.craftbukkit.Main.*;
|
||||
|
||||
public class ThreadCommandReader extends Thread {
|
||||
|
||||
final MinecraftServer server;
|
||||
@ -13,13 +15,19 @@ public class ThreadCommandReader extends Thread {
|
||||
}
|
||||
|
||||
public void run() {
|
||||
// CraftBukkit start
|
||||
if (!useConsole) {
|
||||
return;
|
||||
}
|
||||
// CraftBukkit end
|
||||
|
||||
jline.ConsoleReader bufferedreader = this.server.reader; // CraftBukkit
|
||||
String s = null;
|
||||
|
||||
try {
|
||||
// CraftBukkit start - JLine disabling compatibility
|
||||
while (!this.server.isStopped && MinecraftServer.isRunning(this.server)) {
|
||||
if (org.bukkit.craftbukkit.Main.useJline) {
|
||||
if (useJline) {
|
||||
s = bufferedreader.readLine(">", null);
|
||||
} else {
|
||||
s = bufferedreader.readLine();
|
||||
|
@ -105,6 +105,10 @@ public final class CraftServer implements Server {
|
||||
this.serverVersion = CraftServer.class.getPackage().getImplementationVersion();
|
||||
|
||||
Bukkit.setServer(this);
|
||||
|
||||
if (!Main.useConsole) {
|
||||
getLogger().info("Console input is disabled due to --noconsole command argument");
|
||||
}
|
||||
|
||||
configuration = YamlConfiguration.loadConfiguration(getConfigFile());
|
||||
configuration.options().copyDefaults(true);
|
||||
|
@ -13,6 +13,7 @@ import net.minecraft.server.MinecraftServer;
|
||||
|
||||
public class Main {
|
||||
public static boolean useJline = true;
|
||||
public static boolean useConsole = true;
|
||||
|
||||
public static void main(String[] args) {
|
||||
// Todo: Installation script
|
||||
@ -93,6 +94,8 @@ public class Main {
|
||||
.describedAs("Yml file");
|
||||
|
||||
acceptsAll(asList("nojline"), "Disables jline and emulates the vanilla console");
|
||||
|
||||
acceptsAll(asList("noconsole"), "Disables the console");
|
||||
|
||||
acceptsAll(asList("v", "version"), "Show the CraftBukkit Version");
|
||||
}
|
||||
@ -123,6 +126,10 @@ public class Main {
|
||||
System.setProperty("user.language", "en");
|
||||
useJline = false;
|
||||
}
|
||||
|
||||
if (options.has("noconsole")) {
|
||||
useConsole = false;
|
||||
}
|
||||
|
||||
MinecraftServer.main(options);
|
||||
} catch (Throwable t) {
|
||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren