2012-02-23 2 views
0

мне нужно создать пакет для моего Mac Application, и я использую PackageMakerПакет проверки Maker ошибка с Shell Script

мне нужно проверить JVM версии, и если ее меньше, то 10,6, то я должен прервать Installtion и спросить пользователь установить JVM первым,
для этого я использую следующий сценарий оболочки

REQUIRED_VERSION=106 
#Converting the value in numeric value for comparison in later part of the script REQUIRED_VERSION=`echo $REQUIRED_VERSION | sed -e 's;\.;0;g'` 
#Redirecting complete output of java -version to tmp.ver file 
java -version >tmp.ver 2>&1 
#Getting current version from the tmp.ver file 
VERSION=`cat tmp.ver | grep "java version" | awk '{ print substr($3, 2, length($3)-2); }'` 
rm tmp.ver 
#Coverting into numeric value 
VERSION=`echo $VERSION | awk '{ print substr($1, 1, 3); }' | sed -e 's;\.;0;g'` 
echo $VERSION 
if [ $VERSION ] 
    then 
     if [ $VERSION -gt $REQUIRED_VERSION ] || [ $VERSION -eq $REQUIRED_VERSION ] 
      then 
       echo "requirement matched" 
       exit 1; 
      else 
       echo "lower version" 
       exit 0; 
     fi 
    else 
     echo "not able to find java version" 
     exit 0; 
fi 

и в упаковке производителе я поставил чек, чтобы пройти, но во всех случаях его удар HTE терпит неудачу условия, т.е. написано типа Неправильно, может ли кто-нибудь помочь мне, с «Что должно быть t return value form shell script ", что создатель пакета может понять, что его скрипт прошел или завершился с ошибкой.

+0

, если вы показываете свой журнал в ваших встроенных установщиках, что появляется: «соответствие требованиям», «нижняя версия» или «не удается найти версию Java»? –

+0

@MichaelDautermann: он отображает соответствие требованиям – Amitg2k12

ответ

0

exit 0 - это то, что вы возвращаете из сценария InstallationCheck для указания успеха.

Все остальное указывает на ошибку.

Обрати свои 0 и 1 в ваш скрипт, и вам должно быть хорошо.

И этот ответ должен быть в порядке для старой версии PackageMaker, которую вы используете. Более поздние версии PackageMaker могут поддерживать скрипты InstallationCheck, но current Apple documentation for PackageMaker не упоминает об этом вообще и вместо этого фокусируется на «Панели требований к пакетам продуктов» (см. Рис. 2-8 в документации).

Смежные вопросы