Skip to content

Not a real terminal somehow #158

@MrRedRhino

Description

@MrRedRhino

Hello, I am trying to run a Minecraft server with this library to emulate a real shell to get autocomplete in its console. I tried using JediTerm to run the server start command manually which works how i want it. But when using the code below, the server does not produce suggestions when sending tab keys. It also complains that WARN StatusConsoleListener Advanced terminal features are not available in this environment. I'm clueless what JediTerm does differently to make that work, that my code doesnt do.

HashMap<String, String> env = new HashMap<>(System.getenv());
env.put("TERM", "xterm-256color");
PtyProcess ptyProcess = new PtyProcessBuilder()
        .setEnvironment(env)
        .setDirectory(Config.mcServerDirectory())
        .setCommand(new String[]{"/bin/bash", "--login"})
        .start();
ptyProcess.onExit().thenAccept(process -> {
    state = State.STOPPED;
    LOGGER.info("Server stopped");
});
new Thread(() -> handleConsoleInput(ptyProcess), "Console Reader").start();
ptyProcess.outputWriter().write("/home/pipeman/.jdks/zulu21.32.17-ca-jre21.0.2-linux_x64/bin/java -jar paper-1.21.1-120.jar nogui\n");
ptyProcess.outputWriter().flush();

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions