Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Помогите В консоли возникает ошибка из-за TerminalConsoleAppender

Метки:
Теги Теги
java java 17

lakche

Ньюби
Баллы
1
В качестве ядра используется paper версии 1.20.1. Сервер не принимает версию джавы и из-за этого не запускается вот код start.bat:

@Echo OFF
SET BINDIR=%~dp0
"C:/Program Files/Java/jdk-17/bin/javaw.exe" -Xms256m -Xmx1024m -Dfile.encoding=UTF-8 -jar paper-1.20.1-196.jar
pause

а вот лог сервера:

[20:22:53] [ServerMain/INFO]: Environment: authHost='https://authserver.mojang.com', accountsHost='https://api.mojang.com', sessionHost='https://sessionserver.mojang.com', servicesHost='https://api.minecraftservices.com', name='PROD'
[20:22:54] [ServerMain/INFO]: Loaded 7 recipes
[20:22:54] [Server thread/INFO]: Starting minecraft server version 1.20.1
[20:22:54] [Server thread/INFO]: Loading properties
[20:22:54] [Server thread/INFO]: This server is running Paper version git-Paper-196 (MC: 1.20.1) (Implementing API version 1.20.1-R0.1-SNAPSHOT) (Git: 773dd72)
[20:22:55] [Server thread/INFO]: Server Ping Player Sample Count: 12
[20:22:55] [Server thread/INFO]: Using 4 threads for Netty based IO
[20:22:55] [Server thread/WARN]: [!] The timings profiler has been enabled but has been scheduled for removal from Paper in the future.
We recommend installing the spark profiler as a replacement: https://spark.lucko.me/
For more information please visit: https://github.com/PaperMC/Paper/issues/8948
[20:22:55] [Server thread/INFO]: [ChunkTaskScheduler] Chunk system is using 1 I/O threads, 3 worker threads, and gen parallelism of 3 threads
[20:22:55] [Server console handler/ERROR]: [TerminalConsole] Failed to read console input
java.io.IOException: Неверный дескриптор
at java.io.FileInputStream.readBytes(Native Method) ~[?:?]
at java.io.FileInputStream.read(FileInputStream.java:276) ~[?:?]
at java.io.BufferedInputStream.read1(BufferedInputStream.java:282) ~[?:?]
at java.io.BufferedInputStream.read(BufferedInputStream.java:343) ~[?:?]
at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:270) ~[?:?]
at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:313) ~[?:?]
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:188) ~[?:?]
at java.io.InputStreamReader.read(InputStreamReader.java:177) ~[?:?]
at java.io.BufferedReader.fill(BufferedReader.java:162) ~[?:?]
at java.io.BufferedReader.readLine(BufferedReader.java:329) ~[?:?]
at java.io.BufferedReader.readLine(BufferedReader.java:396) ~[?:?]
at net.minecrell.terminalconsole.SimpleTerminalConsole.readCommands(SimpleTerminalConsole.java:180) ~[terminalconsoleappender-1.3.0.jar:?]
at net.minecrell.terminalconsole.SimpleTerminalConsole.start(SimpleTerminalConsole.java:143) ~[terminalconsoleappender-1.3.0.jar:?]
at net.minecraft.server.dedicated.DedicatedServer$1.run(DedicatedServer.java:102) ~[paper-1.20.1.jar:git-Paper-196]
Suppressed: java.io.IOException: Неверный дескриптор
at java.io.FileDescriptor.close0(Native Method) ~[?:?]
at java.io.FileDescriptor.close(FileDescriptor.java:297) ~[?:?]
at java.io.FileInputStream$1.close(FileInputStream.java:459) ~[?:?]
at java.io.FileDescriptor.closeAll(FileDescriptor.java:355) ~[?:?]
at java.io.FileInputStream.close(FileInputStream.java:457) ~[?:?]
at java.io.BufferedInputStream.close(BufferedInputStream.java:481) ~[?:?]
at sun.nio.cs.StreamDecoder.implClose(StreamDecoder.java:366) ~[?:?]
at sun.nio.cs.StreamDecoder.close(StreamDecoder.java:204) ~[?:?]
at java.io.InputStreamReader.close(InputStreamReader.java:192) ~[?:?]
at java.io.BufferedReader.close(BufferedReader.java:525) ~[?:?]
at net.minecrell.terminalconsole.SimpleTerminalConsole.readCommands(SimpleTerminalConsole.java:183) ~[terminalconsoleappender-1.3.0.jar:?]
at net.minecrell.terminalconsole.SimpleTerminalConsole.start(SimpleTerminalConsole.java:143) ~[terminalconsoleappender-1.3.0.jar:?]
at net.minecraft.server.dedicated.DedicatedServer$1.run(DedicatedServer.java:102) ~[paper-1.20.1.jar:git-Paper-196]
[20:22:55] [Server thread/INFO]: Default game type: SURVIVAL
[20:22:55] [Server thread/INFO]: Generating keypair
[20:22:55] [Server thread/INFO]: Starting Minecraft server on *:25773
[20:22:55] [Server thread/INFO]: Using default channel type
[20:22:55] [Server thread/INFO]: Paper: Using Java compression from Velocity.
[20:22:55] [Server thread/INFO]: Paper: Using Java cipher from Velocity.
[20:22:55] [Server thread/INFO]: Server permissions file permissions.yml is empty, ignoring it
[20:22:55] [Server thread/WARN]: **** SERVER IS RUNNING IN OFFLINE/INSECURE MODE!
[20:22:55] [Server thread/WARN]: The server will make no attempt to authenticate usernames. Beware.
[20:22:55] [Server thread/WARN]: Whilst this makes it possible to use Velocity, unless access to your server is properly restricted, it also opens up the ability for hackers to connect with any username they choose.
[20:22:55] [Server thread/WARN]: Please see https://docs.papermc.io/velocity/security for further information.
[20:22:55] [Server thread/WARN]: To change this, set "online-mode" to "true" in the server.properties file.
[20:22:55] [Server thread/INFO]: Preparing level "world"
[20:22:55] [Server thread/ERROR]: Encountered an unexpected exception
java.lang.RuntimeException: java.io.IOException: Процесс не может получить доступ к файлу, так как часть этого файла заблокирована другим процессом
at net.minecraft.server.MinecraftServer.loadWorld0(MinecraftServer.java:517) ~[paper-1.20.1.jar:git-Paper-196]
at net.minecraft.server.MinecraftServer.loadLevel(MinecraftServer.java:434) ~[paper-1.20.1.jar:git-Paper-196]
at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:308) ~[paper-1.20.1.jar:git-Paper-196]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1100) ~[paper-1.20.1.jar:git-Paper-196]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[paper-1.20.1.jar:git-Paper-196]
at java.lang.Thread.run(Thread.java:842) ~[?:?]
Caused by: java.io.IOException: Процесс не может получить доступ к файлу, так как часть этого файла заблокирована другим процессом
at sun.nio.ch.FileDispatcherImpl.write0(Native Method) ~[?:?]
at sun.nio.ch.FileDispatcherImpl.write(FileDispatcherImpl.java:68) ~[?:?]
at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:132) ~[?:?]
at sun.nio.ch.IOUtil.write(IOUtil.java:76) ~[?:?]
at sun.nio.ch.IOUtil.write(IOUtil.java:67) ~[?:?]
at sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:288) ~[?:?]
at net.minecraft.util.DirectoryLock.create(DirectoryLock.java:26) ~[?:?]
at net.minecraft.world.level.storage.LevelStorageSource$LevelStorageAccess.<init>(LevelStorageSource.java:512) ~[?:?]
at net.minecraft.world.level.storage.LevelStorageSource.validateAndCreateAccess(LevelStorageSource.java:425) ~[?:?]
at net.minecraft.server.MinecraftServer.loadWorld0(MinecraftServer.java:515) ~[paper-1.20.1.jar:git-Paper-196]
... 5 more
[20:22:55] [Server thread/ERROR]: Cause of unexpected exception was
java.io.IOException: Процесс не может получить доступ к файлу, так как часть этого файла заблокирована другим процессом
at sun.nio.ch.FileDispatcherImpl.write0(Native Method) ~[?:?]
at sun.nio.ch.FileDispatcherImpl.write(FileDispatcherImpl.java:68) ~[?:?]
at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:132) ~[?:?]
at sun.nio.ch.IOUtil.write(IOUtil.java:76) ~[?:?]
at sun.nio.ch.IOUtil.write(IOUtil.java:67) ~[?:?]
at sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:288) ~[?:?]
at net.minecraft.util.DirectoryLock.create(DirectoryLock.java:26) ~[?:?]
at net.minecraft.world.level.storage.LevelStorageSource$LevelStorageAccess.<init>(LevelStorageSource.java:512) ~[?:?]
at net.minecraft.world.level.storage.LevelStorageSource.validateAndCreateAccess(LevelStorageSource.java:425) ~[?:?]
at net.minecraft.server.MinecraftServer.loadWorld0(MinecraftServer.java:515) ~[paper-1.20.1.jar:git-Paper-196]
at net.minecraft.server.MinecraftServer.loadLevel(MinecraftServer.java:434) ~[paper-1.20.1.jar:git-Paper-196]
at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:308) ~[paper-1.20.1.jar:git-Paper-196]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1100) ~[paper-1.20.1.jar:git-Paper-196]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[paper-1.20.1.jar:git-Paper-196]
at java.lang.Thread.run(Thread.java:842) ~[?:?]
[20:22:55] [Server thread/ERROR]: This crash report has been saved to: C:\Users\Chaki\OneDrive\Desktop\server\hub_2b2t\.\crash-reports\crash-2024-07-11_20.22.55-server.txt
[20:22:55] [Server thread/INFO]: Stopping server
[20:22:55] [Server thread/INFO]: Saving players
[20:22:55] [Server thread/INFO]: Saving worlds
[20:22:55] [Server thread/INFO]: Saving chunks for level 'ServerLevel[world]'/minecraft:overworld
[20:22:55] [Server thread/INFO]: [ChunkHolderManager] Waiting 60s for chunk system to halt for world 'world'
[20:22:55] [Server thread/INFO]: [ChunkHolderManager] Halted chunk system for world 'world'
[20:22:55] [Server thread/INFO]: [ChunkHolderManager] Saving all chunkholders for world 'world'
[20:22:55] [Server thread/INFO]: [ChunkHolderManager] Saved 0 block chunks, 0 entity chunks, 0 poi chunks in world 'world' in 0,00s
[20:22:55] [Server thread/INFO]: ThreadedAnvilChunkStorage (world): All chunks are saved
[20:22:55] [Server thread/INFO]: ThreadedAnvilChunkStorage: All dimensions are saved
[20:22:55] [Server thread/INFO]: Flushing Chunk IO
[20:22:55] [Server thread/INFO]: Closing Thread Pool
[20:22:55] [Server thread/INFO]: Closing Server
 
Помню у меня такое же было, решением было использовать другой старт батник
Попробуй мой и переименуй ядро в server.jar и как вариант , попробуй jdk 17 переустановить

Снизу файл старт батника

java -Xms4000M -Xmx4000M -Dfile.encoding=UTF-8 -jar server.jar --nogui
pause
 
Причем тут версия джавы?
У тебя файлы мира используются другим сервером. Возможно ещё один инстанс сервера фоном запущен. Перезагрузи комп. Если не поможет - удали session.lock в папке мира и перезагрузи сервер
 
Благодаря к вашим комментариям мне удалось обнаружить что java уделяет какое-то особое внимание именно этому серверу(хотя в связке их несколько), а именно при попытке переименовать ядро это нельзя было сделать потому что ядро каким-то образом использует java хотя сервак выключен. Притом это повторялось после перезагрузки компа. В любом случае помогло копирования ядра и батника с соседнего сервера
 
Остался только один вопрос. Это то почему в логе сервера из раза в раз пишется "java.io.IOException: Неверный дескриптор", причём это ошибка, а они обычно критичны
 
Остался только один вопрос. Это то почему в логе сервера из раза в раз пишется "java.io.IOException: Неверный дескриптор", причём это ошибка, а они обычно критичны
Для чего у тебя используется TerminalConsoleAppender?
Paper из коробки поддерживает автопополнение команд и цвета в консоли.
Если не нужен, то просто удаляй плагин.

Если всё-таки нужен - попробуй написать поиграться с аргументами запуска сервера: https://github.com/Minecrell/TerminalConsoleAppender?tab=readme-ov-file#supported-environments

Если и это не поможет - пиши issue в гит проекта: https://github.com/Minecrell/TerminalConsoleAppender/issues
 
Прикол в том что я не скачивал этот плагин, и в папке plugins его тоже нет. Так-же я попытался применить то что было здесь:

Не помогло(
Без плагинов проблема воспроизводится? Если нет, то ищи виновный плагин бинарным поиском
 

Поделиться этой страницей

Назад
Верх