[ https://issues.apache.org/jira/browse/OPENNLP-1527?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17795770#comment-17795770 ]
ASF GitHub Bot commented on OPENNLP-1527: ----------------------------------------- mawiesne merged PR #564: URL: https://github.com/apache/opennlp/pull/564 > OpenNLP CLI does not start on Windows > ------------------------------------- > > Key: OPENNLP-1527 > URL: https://issues.apache.org/jira/browse/OPENNLP-1527 > Project: OpenNLP > Issue Type: Bug > Components: Command Line Interface > Affects Versions: 2.2.0, 2.3.0, 2.3.1 > Environment: Windows > Reporter: Richard Zowalla > Assignee: Richard Zowalla > Priority: Major > Fix For: 2.3.2 > > > Windows fails to load the OpenNLP. This is reported in > https://stackoverflow.com/questions/77615264/why-does-opennlp-cli-output-slf4j-failed-to-load-class-org-slf4j-impl-staticl > The reason for this behaviour is, that the BAT script doesn't add libs to the > classpath (at all). Therefore, it will fail to load the logger impl (and all > other classes as well). > To fix, we need to append the classpath similar to the linux scripts: > {code:java} > @ECHO off > REM # Licensed to the Apache Software Foundation (ASF) under one > REM # or more contributor license agreements. See the NOTICE file > REM # distributed with this work for additional information > REM # regarding copyright ownership. The ASF licenses this file > REM # to you under the Apache License, Version 2.0 (the > REM # "License"); you may not use this file except in compliance > REM # with the License. You may obtain a copy of the License at > REM # > REM # http://www.apache.org/licenses/LICENSE-2.0 > REM # > REM # Unless required by applicable law or agreed to in writing, > REM # software distributed under the License is distributed on an > REM # # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY > REM # KIND, either express or implied. See the License for the > REM # specific language governing permissions and limitations > REM # under the License. > REM # Note: Do not output anything in this script file, any output > REM # may be inadvertantly placed in any output files if > REM # output redirection is used. > SETLOCAL > IF "%JAVA_CMD%" == "" ( > IF "%JAVA_HOME%" == "" ( > SET JAVA_CMD=java > ) ELSE ( > REM # Keep JAVA_HOME to short-name without spaces > FOR %%A IN ("%JAVA_HOME%") DO SET JAVA_CMD=%%~sfA\bin\java > ) > ) > REM remove HEAP variable > SET HEAP= > IF not "%JAVA_HEAP%" == "" ( > SET HEAP="-Xmx%JAVA_HEAP%" > ) > REM # Should work with Windows XP and greater. If not, specify the path to > where it is installed. > IF "%OPENNLP_HOME%" == "" ( > SET OPENNLP_HOME=%~sp0.. > ) ELSE ( > REM # Keep OPENNLP_HOME to short-name without spaces > FOR %%A IN ("%OPENNLP_HOME%") DO SET OPENNLP_HOME=%%~sfA > ) > echo Environment > echo JAVA_HOME=%JAVA_HOME% > echo OPENNLP_HOME=%OPENNLP_HOME% > REM Iterate over JAR files in the lib directory and build the classpath > SET CLASSPATH="%OPENNLP_HOME%\lib\*" > echo CLASSPATH=%CLASSPATH% > %JAVA_CMD% %HEAP% "-Dlog4j.configurationFile=%OPENNLP_HOME%\conf\log4j2.xml" > -cp %CLASSPATH% opennlp.tools.cmdline.CLI %* > ENDLOCAL > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)