shgit-bashjanusgraphgremlin-servertcpportsharing

JanusGraph Server Failed To Start With Bash


Problem

Why does janusgraph-server.sh start server fails to start?
Running git BASH and JanusGraph:latest [Version 0.6.3 (February 18, 2023)].

Setup

  1. Download JanusGraph package janusgraph-x.x.x.zip
  2. Install JanusGraph unzip janusgraph-x.x.x.zip
  3. Download and Install Git for Windows
  4. Open Git-Bash
  5. Navigate to JanusGraph-Installation directory
  6. Execute bin/janusgraph-server.sh start

Result

Expected

JanusGraph-Server to start.

Actually

JanusGraph-Server doesn't start or put out any error message.

$ bin/janusgraph-server.sh start
/.../Janusgraph/janusgraph-0.6.3/conf/gremlin-server/gremlin-server.yaml will be used to start JanusGraph Server in background
Server failed

Tried

Checking if the run directory was wrong

$ cd bin 
$ sh janusgraph-server.sh start
/.../Janusgraph/janusgraph-0.6.3/conf/gremlin-server/gremlin-server.yaml will be used to start JanusGraph Server in background
Server failed 

Checking if the command was wrong

janusgraph-server.sh
Usage: janusgraph-server.sh {start [conf file]|stop|restart [conf file]|status|console|config [conf file]|usage <group> <artifact> <version>|<conf file>}

    start           Start the server in the background. Configuration file can be specified as a second argument
                    or as JANUSGRAPH_YAML environment variable. If configuration file is not specified
                    or has invalid path than JanusGraph server will try to use the default configuration file
                    at relative location conf/gremlin-server/gremlin-server.yaml
    stop            Stop the server
    restart         Stop and start the server. To use previously used configuration it should be specified again
                    as described in "start" command
    status          Check if the server is running
    console         Start the server in the foreground. Same rules are applied for configurations as described
                    in "start" command
    config          Print out internal script variable to debug config
    usage           Print out this help message

In case command is not specified and the configuration is specified as the first argument, JanusGraph Server will be started in the foreground using the specified configuration (same as with "console" command).

Checking if the port was available

$ netstat -ano | findstr "8182"
  TCP    127.0.0.1:8182         0.0.0.0:0              LISTENING       24528

LISTENING got me worried but found that
TCP-Ports can have multiple programs listening to the same socket, just not bind.
Which is good because I have another IntelliJ programming that needs to be running and uses that port for its java.exe.


Solution

  • Thanks Kelvin Lawrence!
    JanusGraph can't run on Windows due to the way filepaths are handled.

    bin/janusgraph-server.sh: line 211: C:\Program: No such file or directory
    janusgraph-server.sh: line 211: C:\Program: No such file or directory