-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MOTD colors displaying incorrectly on GraalVM #2487
Comments
It might be an issue with Purpur, but also be sure to re-pull the latest image since I have just made improvements to server properties unicode handling in the past couple of days. Speaking of which, you may need to set the newly added FWIW, services:
mc:
image: itzg/minecraft-server
environment:
EULA: true
MOTD: "A §l§cMinecraft§r §nserver"
ports:
- "25565:25565"
volumes:
- mc:/data
volumes:
mc: {} |
...actually, changing that to environment:
EULA: true
MOTD: "A §l§cMinecraft§r §nserver"
TYPE: PURPUR still renders fine. If you're still having issues, add |
I just pulled the latest java17-graalvm tag from docker hub (3 hours old) This is the output of the server startup when running with
|
I also just checked if the issue is during docker setup, but inspecting the docker container reveals that the environment variable is indeed set correctly (as shown above). |
Something seems to be unusual with GraalVM. I see what you are reporting with
|
That's unusual, i expected the server properties to not be influenced by the bundled java runtime. I'd also prefer to run graalvm for my server in the long term. Switching to Hotspot seems to a possible workaround for now. Thanks for the quick help. I'll keep this issue opened for GraalVM instead. |
Agreed, there's entire compatibility suites that the JREs are supposed to comply with...but maybe properties I/O is not part of that 😀 And Oracle gets to do whatever they want with their GraalVM 😉 |
To clarify this, the mc-image-helper tool, which is used for several things including server.properties setup, is a Java app that has to use the bundled JVM. |
Ah, that's the part that i missed. I thought that that was also part of the shell scripts in the container. Thanks for the clarification. |
FWIW it used to be. Re-implementing in Java opened up more features and capabilities...but didn't know I'd be dealing with incompatible Java behavior like it was the 1990's 😄 . |
This issue is stale because it has been open 30 days with no activity. Please add a comment describing the reason to keep this issue open. |
Just recently switched to Graal to implement some optimizations and was confused when my MOTD broke. +1 hope there's a way to fix this in the future! |
This was really bugging me and I wanted to figure out what was happening, and after some trial and error, I've figured it out. Click here to see the reason why the issue exists.I'm running the So then, I created a Dockerfile that does the same as the PR in the hope that would fix it. FROM itzg/minecraft-server:java21-graalvm
ENV LC_ALL en_US.UTF-8 Unfortunately, that only made things worse. I began to get tons of warnings: So, in the end, I came up with the following solution:
FROM itzg/minecraft-server:java21-graalvm
RUN dnf install glibc-langpack-en -y
ENV LC_ALL en_US.UTF-8
services:
minecraft:
build: . # instead of image
tty: true
stdin_open: true
# ... It finally works now! I believe adding the |
Fixes itzg#2487. Also sets `LC_ALL` to `en_US.UTF-8`.
Fixes itzg#2487. Also sets `LC_ALL` to `en_US.UTF-8`.
Describe the problem
The MOTD of my server displays incorrectly: Instead of the color codes entered as environment variables the motd contains two unknown characters instead of the color formatting sign:
I tried all of the below versions:
Container definition
Container logs
The text was updated successfully, but these errors were encountered: