Search code examples
windowscygwinsparqljenafuseki

How to get Jena Fuseki running in a cygwin bash shell?


I am currently running Amazon Corretto Java 11.0. I have downloaded the apache-jena-fuseki-3.15.0.zip. The archive has been extracted. From a cygwin bash shell, I ran:

fuseki-server --update --mem /ds

The server is accessible from a browser at localhost:3030. However, the startup dumped a lot of errors.

Documentation for installing and running on Windows is sparse. I am trying to get to a point where I can upload my ontology and execute SPARQL queries. I can do neither at this point. Any ideas of what might be wrong? Any pointers to online installation guides or videos?

Here are the errors:

2020-06-21 22:55:45,545 main ERROR Unrecognized format specifier [d]
2020-06-21 22:55:45,558 main ERROR Unrecognized conversion specifier [d] starting at position 16 in conversion pattern.
2020-06-21 22:55:45,559 main ERROR Unrecognized format specifier [thread]
2020-06-21 22:55:45,559 main ERROR Unrecognized conversion specifier [thread] starting at position 25 in conversion pattern.
2020-06-21 22:55:45,559 main ERROR Unrecognized format specifier [level]
2020-06-21 22:55:45,560 main ERROR Unrecognized conversion specifier [level] starting at position 35 in conversion pattern.
2020-06-21 22:55:45,560 main ERROR Unrecognized format specifier [logger]
2020-06-21 22:55:45,560 main ERROR Unrecognized conversion specifier [logger] starting at position 47 in conversion pattern.
2020-06-21 22:55:45,561 main ERROR Unrecognized format specifier [msg]
2020-06-21 22:55:45,561 main ERROR Unrecognized conversion specifier [msg] starting at position 54 in conversion pattern.
2020-06-21 22:55:45,561 main ERROR Unrecognized format specifier [n]
2020-06-21 22:55:45,562 main ERROR Unrecognized conversion specifier [n] starting at position 56 in conversion pattern.
2020-06-21 22:55:45,572 main ERROR Unrecognized format specifier [d]
2020-06-21 22:55:45,573 main ERROR Unrecognized conversion specifier [d] starting at position 16 in conversion pattern.
2020-06-21 22:55:45,573 main ERROR Unrecognized format specifier [thread]
2020-06-21 22:55:45,573 main ERROR Unrecognized conversion specifier [thread] starting at position 25 in conversion pattern.
2020-06-21 22:55:45,574 main ERROR Unrecognized format specifier [level]
2020-06-21 22:55:45,574 main ERROR Unrecognized conversion specifier [level] starting at position 35 in conversion pattern.
2020-06-21 22:55:45,574 main ERROR Unrecognized format specifier [logger]
2020-06-21 22:55:45,575 main ERROR Unrecognized conversion specifier [logger] starting at position 47 in conversion pattern.
2020-06-21 22:55:45,575 main ERROR Unrecognized format specifier [msg]
2020-06-21 22:55:45,575 main ERROR Unrecognized conversion specifier [msg] starting at position 54 in conversion pattern.
2020-06-21 22:55:45,575 main ERROR Unrecognized format specifier [n]
2020-06-21 22:55:45,575 main ERROR Unrecognized conversion specifier [n] starting at position 56 in conversion pattern.
2020-06-21 22:55:45,630 main ERROR Unable to locate plugin type for Loggers
2020-06-21 22:55:45,630 main ERROR Unable to locate plugin type for Appenders
2020-06-21 22:55:45,631 main ERROR Unable to locate plugin type for ThresholdFilter
2020-06-21 22:55:45,633 main ERROR Unable to locate plugin for Logger
2020-06-21 22:55:45,633 main ERROR Unable to locate plugin for Logger
2020-06-21 22:55:45,634 main ERROR Unable to locate plugin for Logger
2020-06-21 22:55:45,634 main ERROR Unable to locate plugin for Logger
2020-06-21 22:55:45,635 main ERROR Unable to locate plugin for Logger
2020-06-21 22:55:45,635 main ERROR Unable to locate plugin for Logger
2020-06-21 22:55:45,635 main ERROR Unable to locate plugin for Logger
2020-06-21 22:55:45,636 main ERROR Unable to locate plugin for Logger
2020-06-21 22:55:45,636 main ERROR Unable to locate plugin for Logger
2020-06-21 22:55:45,636 main ERROR Unable to locate plugin for Logger
2020-06-21 22:55:45,637 main ERROR Unable to locate plugin for Logger
2020-06-21 22:55:45,637 main ERROR Unable to locate plugin for AppenderRef
2020-06-21 22:55:45,637 main ERROR Unable to locate plugin for Logger
2020-06-21 22:55:45,637 main ERROR Unable to locate plugin for Logger
2020-06-21 22:55:45,638 main ERROR Unable to locate plugin for Logger
2020-06-21 22:55:45,638 main ERROR Unable to locate plugin for AppenderRef
2020-06-21 22:55:45,639 main ERROR Unable to locate plugin for Root
2020-06-21 22:55:45,639 main ERROR Unable to locate plugin for Loggers
2020-06-21 22:55:45,640 main ERROR Unable to locate plugin for PatternLayout
2020-06-21 22:55:45,640 main ERROR Unable to locate plugin for Console
2020-06-21 22:55:45,640 main ERROR Unable to locate plugin for PatternLayout
2020-06-21 22:55:45,640 main ERROR Unable to locate plugin for Console
2020-06-21 22:55:45,641 main ERROR Unable to locate plugin for Appenders
2020-06-21 22:55:45,641 main ERROR Unable to locate plugin for ThresholdFilter
2020-06-21 22:55:45,642 main ERROR Unrecognized format specifier [d]
2020-06-21 22:55:45,642 main ERROR Unrecognized conversion specifier [d] starting at position 16 in conversion pattern.
2020-06-21 22:55:45,643 main ERROR Unrecognized format specifier [thread]
2020-06-21 22:55:45,643 main ERROR Unrecognized conversion specifier [thread] starting at position 25 in conversion pattern.
2020-06-21 22:55:45,644 main ERROR Unrecognized format specifier [level]
2020-06-21 22:55:45,644 main ERROR Unrecognized conversion specifier [level] starting at position 35 in conversion pattern.
2020-06-21 22:55:45,645 main ERROR Unrecognized format specifier [logger]
2020-06-21 22:55:45,645 main ERROR Unrecognized conversion specifier [logger] starting at position 47 in conversion pattern.
2020-06-21 22:55:45,645 main ERROR Unrecognized format specifier [msg]
2020-06-21 22:55:45,646 main ERROR Unrecognized conversion specifier [msg] starting at position 54 in conversion pattern.
2020-06-21 22:55:45,646 main ERROR Unrecognized format specifier [n]
2020-06-21 22:55:45,647 main ERROR Unrecognized conversion specifier [n] starting at position 56 in conversion pattern.

Solution

  • There is a problem with the Apache Jena Fuseki v3.15.0 combined jar (fuseki-server.jar, not the war file packaging, nor the non-UI jena-fuseki-server form). It is a bug in v 3.15.0 only, not in 3.14.0.

    https://issues.apache.org/jira/browse/JENA-1900

    An in-place fix:

    https://gist.github.com/afs/a862c0e71b37ce617cd0a592b60609f1

    This bash script downloads jena-fuseki-server-3.15.0.jar which does not have the same problem, extracts the "Log4j2Plugins.dat", then replaces the file in fuseki-server.jar.

    An alternative to consider is using jena-fuseki-server as a service. It does not have a UI nor maintain a "run/" area - instead it uses a command line arguments, including a configuration file argument, each time it is started.