Я пытаюсь использовать IntelliJ Idea для работы на perl script. Я установил perl plugin для IDEA, а также Strawberry Perl для Windows (10).Выполнение скрипта Perl внутри IntelliJ Idea
Подсветка синтаксиса и другие возможности работать, но это то, что происходит, когда я пытаюсь запустить программу:
Я новичок в Perl, поэтому я до сих пор только с помощью команды линейки и графики ASCII. Я надеялся просто запустить, протестировать и отладить мои программы perl в IntelliJ, но оператор print
не помещает ничего в это диалоговое окно, когда работает perl ...
Я все еще могу напечатать материал в приведенном выше изображении, курсор, и ввод неправильного материала может вызывать ошибки, как предполагается. Итак, <STDIN>
, кажется, правильно отображен, но <STDOUT>
нет? Или что-то еще не так?
Если я скопировать команду, что она показывает, что работает в CMD, он отлично работает:
Так есть ли способ настроить IntelliJ, чтобы получить <STDOUT>
в этом диалоге? Любая помощь будет оценена по достоинству.
Теперь, после ответа Chankey, я сделал тестовый сценарий, и что один работает:
Может быть, проблема в том, что я импортировал файл PERL от внешнего источника, и IntelliJ не понимает, что это сценарий или что-то в этом роде? Но если я скопирую код в новый файл, он тоже не работает ...
У теста.pl была одна разница: use warnings FATAL => 'all';
вместо use warnings;
. Когда я пытаюсь это, она работает, пока я не ввести строку, в которой, как ожидается, цифровой ввод, а затем выводит целую кучу, что это должно было печатать все вместе, как она завершает работу программы:
Опять же, выход работает отлично в cmd, поэтому я думаю, что это проблема с IntelliJ. Есть идеи? Может быть, символы @ создают проблемы? Что-то другое? Если кто-то использует IDEA для Windows и хочет поиграть с моим кодом, он доступен по адресу github.
'печать "материал"' не ходит в STDOUT, верно? – Menasheh
Общий синтаксис печати - 'print FILEHANDLE LIST'. Если FILEHANDLE опущен, он печатает до последнего выбранного (см. Select) выходного дескриптора. Поэтому, если вы не изменили FILEHANDLE с помощью 'select', тогда он будет печатать по умолчанию FILEHANDLE, который является STDOUT. –