LanguageTool Java应用程序作为系统服务运行。 --languagemodel参数被忽略

问题描述 投票:0回答:1

我已经下载了LanguageTool server。我为该应用程序创建了一个systemd流程,以确保可以轻松管理它并在启动时开始:

系统化

[Unit]
Description=LanguageTool Service

[Service]
WorkingDirectory=/opt/languagetool
ExecStart=/usr/bin/java -cp /usr/local/LangAnalysisApp/LangTool/LanguageTool-4.9/languagetool-server.jar org.languagetool.server.HTTPServer --port 8081 --languagemodel /mnt/languagetool-volume/languagetool-ngrams --allow-origin '*'
StandardOutput=syslog+console+/var/log/languagetool.log
StandardError=syslog+console+/var/log/languagetool.log
User=www-data
Type=simple
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target

该端口通过Nginx公开如下:

NGINX

server {
    listen 80;
    server_name my.domain.com;
    root /var/www/my.domain.com/public_html;

    index index.html;

    charset utf-8;

    access_log off;
    error_log  /var/log/nginx/my.domain.com-error.log error;

    location /v2/check {
        proxy_pass http://localhost:8081/v2/check;
    }

}

--languagemodel选项将被忽略。如果输入不正确,则会出现错误。进程文件中的参数不会引发任何错误,因此系统必须识别该参数。显示的测试n-gram here不会返回任何结果,因此我知道它无法正确加载。

我想知道如何使--languagemodel选项与systemd一起使用。

linux nginx systemd init.d languagetool
1个回答
0
投票

首先,大写很重要。 --languageModel选项仅在使用驼峰式书写方式时才被systemd识别。

第二,该错误不是我自己的任何错误,而是由当前版本的LanguageTool中的错误引起的。提到了一个解决方法here。使用版本5.0的快照可修复该错误。现在使用外部n元语法生成结果。版本4.9.1将在未来几天内发布,并包含对该错误的修复。

© www.soinside.com 2019 - 2024. All rights reserved.