Могу ли я полностью настроить ошибку / предупреждение фазы сборки Xcode 4 Run Script в журналах Навигатора проблем и Журналов сборки? - PullRequest
5 голосов
/ 30 августа 2011

Я где-то читал в блоге, что вы можете интегрировать свои собственные сценарии сборки с графическим интерфейсом Xcode Navigator и Build Logs, печатая сообщения в STDOUT в следующем формате:

FILENAME:LINE_NUMBER: WARNING_OR_ERROR: MSG

(где WARNING_OR_ERROR либо warning, либо error)

, например

/path/to/proj/folder/somefile.ext:10: warning: There was a problem processing the file

В строке 10 из somefile.ext будет отображено предупреждение, которое гласит: «Произошла ошибка при обработке файла». Это действительно работает (это фантастика).

Есть ли официальная документация по этой функции (я не смог ее найти)?

В Навигаторе проблем я получаю предупреждение для файла somefile.ext, но название проблемы - «Ошибка вызова сценария оболочки» (мое сообщение отображается под заголовком). Есть какой-то способ установить этот заголовок, или я застрял с этой общей (и уродливой) «ошибкой вызова сценария оболочки»?

Ответы [ 2 ]

0 голосов
/ 07 августа 2014

выход с 0 в настроенном вами сценарии оболочки отключит «Ошибка вызова сценария оболочки»

0 голосов
/ 10 августа 2012

Это на самом деле не отвечает на ваш вопрос относительно того, можете ли вы настроить «Ошибка вызова сценария оболочки», но код perl не получает хорошие сообщения об ошибках, которые вы описываете, однако, если вы включаете этот модуль perl (или просто код из него) в вашем Perl-скрипте, он генерирует хорошие сообщения об ошибках, о которых вы говорите (все тот же заголовок «Ошибка вызова сценария оболочки», о котором вы упоминали). Просто подумал, что поделюсь этим для всех, кто использует Perl-скрипт в XCode и получает действительно паршивые ошибки.

package XcodeErrors;

use strict;
use warnings;

$SIG{__WARN__} = sub
{
    my @loc = caller(0);
    print STDERR "$loc[1]:$loc[2]: warning: ", @_, "\n";
    return 1;
};

$SIG{__DIE__} = sub
{
    my @loc = caller(0);
    print STDERR "$loc[1]:$loc[2]: error: ", @_, "\n";
    exit 1;
};


1;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...