[
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)