How to start languagetool.jar using --config server.properties (fastText)

Hello all,
I’ve been updating my portable (USB stick) version of LT4 SNAPSHOT today and while starting the current version like I did before the update
java -Dfile.encoding=UTF-8 --config server.properties -jar /Volumes/LT/LanguageTool-6.4-SNAPSHOT/languagetool.jar

… I’ve become aware of
WARN o.l.l.i.DefaultLanguageIdentifier fastText not configured - language detection performance will be degraded. See https://dev.languagetool.org/http-server#starting-from-command-line for instructions.

Following said instructions and installing fastText using Homebrew, a fastText language identification model and config file server.properties are now in my LT root folder. Alas, I can’t seem to run LT using said server.properties.

That is, neither
java -Dfile.encoding=UTF-8 -jar /Volumes/LT/LanguageTool-6.4-SNAPSHOT/languagetool.jar --config server.properties
nor
java -Dfile.encoding=UTF-8 --config server.properties -jar /Volumes/LT/LanguageTool-6.4-SNAPSHOT/languagetool.jar

accept the unrecognized option --config server.properties. Recent documentation on running LT as a standalone Java application is scarce, so far the introduction of using it along fastText appears to be undocumented. FYI I’m on macOS Mojave 10.14.6 which, possibly, is irrelevant to this use case.

Please help!
All best, S.

Please use languagetool-server.java instead of languagetool.jar

Thanks @dnaber but invoking the server is not the method I used for LT. I was using snapshots (or releases, whichever was most recent) of the standalone offline versions, hence languagetool.jar. This worked flawlessly until the introduction of fastText in recent snapshots of LT, which rely on it but seem to have no implementation for --config server.properties …?!

I tried your suggestion by invoking java -Dfile.encoding=UTF-8 -cp /Volumes/LT/LanguageTool-6.4-SNAPSHOT/languagetool-server.jar org.languagetool.server.HTTPServer --config /Volumes/LT/LanguageTool-6.4-SNAPSHOT/server.properties --port 8081 --allow-origin which renders

Error: Missing arguments for LanguageTool API. Please see https://languagetool.org/http-api/swagger-ui/#/default

Following this output leads me to using LT via API, which is beyond me and my use case. I’m a single-user happy with the Java offline standalone version. Would it still be possible to have it working with fastText?

fastText is only supported with the LT server. However, it’s just that the warning is new. You can ignore it, nothing has changed (other than the warning being shown).

1 Like

Good to hear, thanks for clarifying that, @dnaber!