2009-05-18 1 views
2

Для проекта портирования Perl я использую ActiveDate Komodo IDE 5.1.Как я могу добавить проектный путь модуля @INC к Komodo без нарушения проверки синтаксиса?

По внешним причинам модули xyz.pm находятся в другом дереве каталогов. Добавив PERL5LIB = <> под вкладкой «environemt» диалогового окна debu/run, я могу показать Komodo/Perl, как запустить скрипт.

К сожалению, проверка синтаксиса, по-видимому, не оценивает эти директивы и требования IDE, что произошла фатальная ошибка «не удается найти xyz.pm», несмотря на то, что сценарий работает нормально.

Один из способов исправить это добавить путь модуля с помощью «Дополнительные Perl Импорт каталогов» под <Edit> < Предпочтения > < Языки > <Perl>, но это глобальная директива, а не конкретного проекта, который ведет для всех видов интересных проблем, когда имена модулей сталкиваются.

Итак, как я могу настроить среду разработки Komodo для хранения «дополнительных каталогов импорта Perl» [путь @INC для проверки синтаксиса] с проектом?

EDIT: Предлагаемый способ добавления использования lib qw '../ lib'; может быть полезно, если бы я мог выполнить его только в IDE только. Но этот код не должен отображаться в рабочей среде, где сценарий запуска правильно устанавливает среду.

+0

использование lib '/ dir1/dir2'? –

+0

use lib '/ dir1/dir2' является адаптацией на уровне кода и не будет работать без изменений в продуктивной среде, поэтому это не сработает. – lexu

ответ

5

Для Komodo IDE 5.0.1:

Project (верхняя строка меню) -> -> Свойства -> Языки (слева меню) -> Perl

Это позволит добавить «Дополнительные Perl Импорт Каталоги ", которые вы хотите.

+0

Ваш ответ описывает, как он должен работать .. но не всегда. Поскольку ActiveState отреагировала на мой вопрос с «записью ошибки», я считаю, что вы заслуживаете заслуги в правильном ответе. См .: http://community.activestate.com/forum/how-add-project-specific-inc-module-path-komodo-without-breaking-syntax-checking – lexu

1

Я поставил use lib qw'../lib';, чтобы получить Комодо, чтобы правильно выделить.

Он просто добавляет ../lib в @INC.

+0

Merci! Я включил ваше предложение (и Александр Черний) в вопрос и прокомментировал, почему он сдвигает, но не решает проблему. Может быть, код можно сделать только для exec в среде IDE? – lexu

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