Shell Script для запуска .jar работает из терминала, но не AppleScript - PullRequest
0 голосов
/ 12 июля 2019

Я использую скрипт оболочки для запуска файла .jar и ввода параметров.Когда я захожу в папку, содержащую соответствующие файлы и вызываю следующую строку, все работает.

cat 'prompt.csv' | sh runScript.sh 'WVFO'

Я хочу запустить это из AppleScript, и когда я использую следующий код, я получаю ошибку

do shell script "cat 'path_to_file/prompt.csv' | sh path_to_file/runScript.sh 'WVFO'"

Это ошибкаподнял:

error "Error: Could not find or load main class outputFocalAnalysis.FocalInfoEdge
Caused by: java.lang.ClassNotFoundException: outputFocalAnalysis.FocalInfoEdge" number 1

Наконец, вот мой код sh:

echo "First arg: $1"
if [ $1 = "WSO" ]; then
    echo "WSO found"
    java -cp MatrixPath2.0.jar outputFocalAnalysis/FocalInfoVertex
elif [ $1 = "WVFO" ]; then
    echo "Must be WVFO"
    java -cp MatrixPath2.0.jar outputFocalAnalysis/FocalInfoEdge
else    
    echo "Argument 1 Invalid"
fi

Структура папок следующая: Project - это главная папка, содержащая run.scpt (AppleScript), prompt.csv, runScript.sh и MatrixPath2.0.jar.


Редактировать:

path_to_file - полный путь к этой папке проекта, т. Е. Users/my_name/Documents/Work/Project/prompt.csv

1 Ответ

1 голос
/ 12 июля 2019

Ошибка Caused by: java.lang.ClassNotFoundException: outputFocalAnalysis.FocalInfoEdge" говорит о том, что банка не была правильно установлена ​​в classpath. Пожалуйста, попробуйте следовать в вашем сценарии оболочки

java -cp path_to_file/MatrixPath2.0.jar outputFocalAnalysis/FocalInfoVertex
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...