Minecraft server does not start

I saw a few other posts about the minecraft server not starting, but I did not find any relevant answers.

I downloaded mineos from the codeemo.com site 3 days ago, and installed mineos this morning. I slogged my through the webGUI and downloaded the 1.17 jar, which I attached to a newly created server (EDIT: and also set eula=true). When I attempt to start the server, the status says “DOWN” all the time, even though the notification says that starting the server was successful. If I spam the Start button, I will get a few messages saying that the server has to be down in order to perform that action, interspersed with messages saying that the server is down. ‘ps’ shows nothing running for minecraft, and netstat shows no listeners on the default port (25565).

Were are the logs? (Found one of them via Having problems with your MineOS installation? Read this first!) How would I go about diagnosing and troubleshooting the problem?

Update: in /var/logs/mineos.log, I see the following (nothing else):
{“level”:“info”,“message”:"[adventure] issued command : “start”",“timestamp”:“2021-06-16T19:16:15.714Z”}
{“level”:“info”,“message”:"[adventure] received request “start”",“timestamp”:“2021-06-16T19:16:15.714Z”}

And there is no /var/games/minecraft/servers/[servername]/logs (I realize [servername] = [adventure] in my case - either way, it does not exist)

I am having the same issues.

I have updated to the Java16, reset the scripts, nothing seems to be working so far.

{"level":"info","message":"Downloaded information for collection: Imagicalmine (1 entries)","timestamp":"2021-06-18T21:>{"level":"info","message":"Downloaded information for collection: Forge Mod (50 entries)","timestamp":"2021-06-18T21:31>{"level":"info","message":"Downloaded information for collection: BungeeCord (10 entries)","timestamp":"2021-06-18T21:3>{"level":"info","message":"Downloaded information for collection: Mianite (23 entries)","timestamp":"2021-06-18T21:31:0>{"level":"info","message":"Downloaded information for collection: Paper (24 entries)","timestamp":"2021-06-18T21:31:10.>{"level":"info","message":"Downloaded information for collection: Nukkit (2 entries)","timestamp":"2021-06-18T21:31:10.>{"level":"info","message":"Downloaded information for collection: SpongeVanilla (764 entries)","timestamp":"2021-06-18T>{"level":"info","message":"Downloaded information for collection: Cuberite C++ Server (4 entries)","timestamp":"2021-06>{"level":"info","message":"[Yay] issued command : \"start\"","timestamp":"2021-06-18T21:34:17.087Z"}
{"level":"info","message":"[Yay] received request \"start\"","timestamp":"2021-06-18T21:34:17.089Z"}
{"level":"info","message":"[Yay] [MY_IP] issued command : \"modify_sc\"","timestamp":"2021-06-18T21:34:20.090Z"}
{"level":"info","message":"[Yay] received request \"modify_sc\"","timestamp":"2021-06-18T21:34:20.091Z"}
{"level":"info","message":"[Yay] [MY_IP] issued command : \"modify_sc\"","timestamp":"2021-06-18T21:34:21.862Z"}
{"level":"info","message":"[Yay] received request \"modify_sc\"","timestamp":"2021-06-18T21:34:21.863Z"}
{"level":"info","message":"[Yay] [MY_IP] issued command : \"start\"","timestamp":"2021-06-18T21:34:26.464Z"}
{"level":"info","message":"[Yay] received request \"start\"","timestamp":"2021-06-18T21:34:26.465Z"}
{"level":"info","message":"[Yay] [MY_IP] issued command : \"accept_eula\"","timestamp":"2021-06-18T21:35:01.908Z"}{"level":"info","message":"[Yay] received request \"accept_eula\"","timestamp":"2021-06-18T21:35:01.909Z"}
{"level":"info","message":"[Yay] eula.txt detected: ACCEPTED (eula=true)","timestamp":"2021-06-18T21:35:02.163Z"}
{"level":"info","message":"[Yay] [MY_IP] issued command : \"start\"","timestamp":"2021-06-18T21:35:07.710Z"}
{"level":"info","message":"[Yay] received request \"start\"","timestamp":"2021-06-18T21:35:07.710Z"}
{"level":"info","message":"[Yay] [MY_IP] issued command : \"start\"","timestamp":"2021-06-18T21:35:54.941Z"}
{"level":"info","message":"[Yay] received request \"start\"","timestamp":"2021-06-18T21:35:54.942Z"}
{"level":"info","message":"[Yay] [MY_IP] issued command : \"start\"","timestamp":"2021-06-18T21:37:40.888Z"}
{"level":"info","message":"[Yay] received request \"start\"","timestamp":"2021-06-18T21:37:40.889Z"}

There’s a snapshot of some of my recent logs to show what’s going on in case that’s helpful.

Open up a terminal session, and switch to your non-root user (not apparent from logs). Type in these commands, swapping out the values according to what you see on your own output.

$ cd /usr/games/minecraft
$ chmod +x ./mineos_console.js
$ ./mineos_console.js -s Yay get_start_args
[Yay] Successfully executed "get_start_args"
[ '-dmS',
  'nogui' ]
$ cd /var/games/minecraft/servers/Yay
$ /usr/bin/java -server -jar minecraft_server.1.15.jar nogui

What this is doing is:

  1. establishing the exact startup command being executed by the webui
  2. going into your server directory as the non-root user
  3. running the exact startup command, and giving you direct access to the screen output

You may have more arguments in your output vs. mine, so do your best to keep them all in, except the first two arguments, which are only useful for screen invocations (you don’t want this, because you’re troubleshooting).

Also you can just run /usr/bin/java (or whatever yours says)–this is where I suspect the issue is: because you’ve installed a new Java, and nothing starts, I am inclined to think that whatever Java you installed is not in your $PATH environment.

First off thanks for replying so quickly.

When I ran those commands I got this output back

Error: Invalid or corrupt jarfile minecraft_server.1.17.jar

I’m inclined to reinstall the Jarfile based the output, so I’ll try that next.

Lmk if you have any other suggestions, thanks!

Also I ran /usr/bin/java and this is what I got back

cjohnson@aperturelabs:/var/games/minecraft/profiles/1.17$ /usr/bin/java
Usage: java [options] <mainclass> [args...]
           (to execute a class)
   or  java [options] -jar <jarfile> [args...]
           (to execute a jar file)
   or  java [options] -m <module>[/<mainclass>] [args...]
       java [options] --module <module>[/<mainclass>] [args...]
           (to execute the main class in a module)
   or  java [options] <sourcefile> [args]
           (to execute a single source-file program)

 Arguments following the main class, source file, -jar <jarfile>,
 -m or --module <module>/<mainclass> are passed as the arguments to
 main class.

 where options include:

    -cp <class search path of directories and zip/jar files>
    -classpath <class search path of directories and zip/jar files>
    --class-path <class search path of directories and zip/jar files>
                  A : separated list of directories, JAR archives,
                  and ZIP archives to search for class files.
    -p <module path>
    --module-path <module path>...
                  A : separated list of directories, each directory
                  is a directory of modules.
    --upgrade-module-path <module path>...
                  A : separated list of directories, each directory
                  is a directory of modules that replace upgradeable
                  modules in the runtime image
    --add-modules <module name>[,<module name>...]
                  root modules to resolve in addition to the initial module.
                  <module name> can also be ALL-DEFAULT, ALL-SYSTEM,
                  list observable modules and exit
    -d <module name>
    --describe-module <module name>
                  describe a module and exit
    --dry-run     create VM and load main class but do not execute main method.
                  The --dry-run option may be useful for validating the
                  command-line options such as the module system configuration.
                  validate all modules and exit
                  The --validate-modules option may be useful for finding
                  conflicts and other errors with modules on the module path.
                  set a system property
                  enable verbose output for the given subsystem
    -version      print product version to the error stream and exit
    --version     print product version to the output stream and exit
    -showversion  print product version to the error stream and continue
                  print product version to the output stream and continue
                  show module resolution output during startup
    -? -h -help
                  print this help message to the error stream
    --help        print this help message to the output stream
    -X            print help on extra options to the error stream
    --help-extra  print help on extra options to the output stream
                  enable assertions with specified granularity
                  disable assertions with specified granularity
    -esa | -enablesystemassertions
                  enable system assertions
    -dsa | -disablesystemassertions
                  disable system assertions
                  load native agent library <libname>, e.g. -agentlib:jdwp
                  see also -agentlib:jdwp=help
                  load native agent library by full pathname
                  load Java programming language agent, see java.lang.instrument
                  show splash screen with specified image
                  HiDPI scaled images are automatically supported and used
                  if available. The unscaled image filename, e.g. image.ext,
                  should always be passed as the argument to the -splash option.
                  The most appropriate scaled image provided will be picked up
                  See the SplashScreen API documentation for more information
    @argument files
                  one or more argument files containing options
                  prevent further argument file expansion
                  allow classes to depend on preview features of this release
To specify an argument for a long option, you can use --<name>=<value> or
--<name> <value>.

So I assume I updated it correctly

This definitely points to why the start command isn’t doing anything. For starters, can you confirm the following:

  1. does your new java installation start a 1.16 server?
  2. does subsequent attempts to start 1.17 manually after redownloading (as we are discussing) now work?

Okay to answer your questions:

  1. Yes it starts 1.16 and older servers just fine.

  2. After manually redownloading 1.17, it still will not start a 1.17 instance. I did “sudo reboot” the server and restart MineOS.

I’m having the same issue - 1.16 works fine but 1.17 just won’t start - keen to see if anyone has a fix for this.

If the issue is strictly limited to 1.17, the fix is almost certainly changing the java binary for that server:

Alright, bit late to the party but I’ve got (what seems to be) the same issue.

Server Logs:

{"level":"info","message":"[LowPixel] issued command : \"start\"","timestamp":"2021-06-25T18:43:22.322Z"}
{"level":"info","message":"[LowPixel] received request \"start\"","timestamp":"2021-06-25T18:43:22.326Z"}
{"level":"info","message":"[LowPixel] issued command : \"start\"","timestamp":"2021-06-25T18:43:23.072Z"}
{"level":"info","message":"[LowPixel] received request \"start\"","timestamp":"2021-06-25T18:43:23.076Z"}

Logs inside the supervisor/mineos-stdout---supervisor-wF4vLi.log, Though I can’t seem to verify the timings of this because I have attempted Issue 674:

info: [LowPixel] issued command : "start"
info: [LowPixel] received request "start"
error: { Error: connect ECONNREFUSED
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1107:14)
  errno: 'ECONNREFUSED',
  syscall: 'connect',
  address: '',
  port: 25565 }

Trying to run the commands you’ve given results in:
[LowPixel] Error executing "get_start_args" because server condition not met: Cannot start server without a designated jar/phar.

I’ve tried starting with both 1.17 and 1.16.5 (correct files), Paper and Minecraft versions.
I’m using openjdk 16.0.1 for the Raspbery Pi.

Stumped on how to proceed.