Ошибка выполнения команды Jar из первой строки - PullRequest
0 голосов
/ 04 октября 2019

Из этого хранилища

Я пытаюсь выполнить команду.

./PersonalityRecognizer -i ../output_dir -d -t 2 -a ../mairesse_Apache.arff

Однако я получаю эту ошибку.

C:/weka/weka-3-4/weka.jar: line 1: $'PK\003\004': command not found
C:/weka/weka-3-4/weka.jar: line 2: syntax error near unexpected token `('
C:/weka/weka-3-4/weka.jar: line 2: `▒=1 META-INF/▒=1META-INF/MANIFEST.MF▒M▒▒LK-.▒K-*▒▒ϳR0▒3▒▒M▒▒▒u▒I,.▒R(O▒N▒K/▒▒s▒t▒▒▒/N-▒r.JM,IM▒u▒▒Rp▒+▒1▒3▒▒P▒׀NMPK'
./PersonalityRecognizer: line 15: : command not found

IЗагрузите файл weka jar и укажите путь в следующем файле в соответствии с инструкциями:

#! /bin/bash -

# ENVIRONMENT VARIABLES

JDK_PATH=../../apps/jdk1.5.0_05
WEKA=../../apps/weka-3-4/weka.jar

# ----------------------------------

COMMONS_CLI=./lib/commons-cli-1.0.jar
MRC=./lib/jmrc.jar

LIBS=.:$WEKA:$COMMONS_CLI:$MRC:bin/

$JDK_PATH/bin/java -Xmx512m -classpath $LIBS recognizer.PersonalityRecognizer $*

1 Ответ

1 голос
/ 07 октября 2019

Как сказал Дженрике, если вы используете окна, вы должны отредактировать PersonalityRecognizer.bat (вы, кажется, редактировали скрипт bash, но работали на окнах).

Затем вы должны убедиться, что структура каталога выглядитнапример:

  \ Personality-Recognition-in-SD-master (this is the cloned repo's root)
    +---apps
    +---Classification
    +---data
    +---mrc
    +---output_dir
    \---PersonalityRecognizer (this contains the PersonalityRecognizer.bat and bash scripts, note the subdirectory)

Вы также должны обязательно отредактировать PersonalityRecognizer.properties в подкаталоге PersonalityRecognizer, чтобы включить путь к своему приложению. Если вы используете окна, вы должны использовать двойной / для разделителя пути:

##################################################
# Configuration File of the Personality Recognizer
##################################################

# All variables should be modified according to your
# directory structure

# Warning: for Windows paths, backslashes need to be
# doubled, e.g. c:\\Program Files\\Recognizer

# Root directory of the application
appDir = F:\\Personality-Recognition-in-SD-master\\PersonalityRecognizer

# Path to the LIWC dictionary file (LIWC.CAT)
liwcCatFile = lib/LIWC.CAT

# Path to the MRC Psycholinguistic Database file (mrc2.dct)
mrcPath = ../mrc/mrc2.dct

Обновление: Также убедитесь, что переменные JDK_PATH и WEKA в PersonalityRecognizer.bat указывают на действительныйПуть JDK и путь WEKA (weka.jar содержится в клонированном репо):

@echo off
rem WINDOWS LAUNCH SCRIPT

rem ENVIRONMENT VARIABLES TO MODIFY

set JDK_PATH="C:\Program Files\Java\jdk1.6.0_01"
set WEKA="F:\Personality-Recognition-in-SD-master\apps\weka-3-4\weka.jar"

rem ----------------------------------

set COMMONS_CLI="lib\commons-cli-1.0.jar"
set JMRC="lib\jmrc.jar"

set LIBS=%WEKA%;%COMMONS_CLI%;%JMRC%;%CD%;bin\

%JDK_PATH%\bin\java -Xmx512m -classpath %LIBS% recognizer.PersonalityRecognizer %1 %2 %3 %4 %5 %6 %7 %8 %9
...