2017-02-22 96 views
1

我在IntelliJ中使用IntelliJ與Camelcade Perl plugin版本2016.3.1_10(在github中也稱爲版本2.2),由IntelliJ中的內置插件管理器提供服務。是否可以使用Camelcade Perl插件打印到IntelliJ的調試控制檯?

雖然調試和測試我的Perl程序,我希望能夠從我在調試器控制檯選項卡(就像我可以用最JetBrains公司的IDE如PHPStorm辦將派出由PHP echo輸出顯示print語句的輸出和print語句到調試器控制檯)。

但是由於某些原因,IntelliJ和Perl調試器插件沒有發生這種情況。我在調試器控制檯選項卡中看到的所有內容如下:

Listening on localhost:42079... 
/usr/bin/perl -I/home/kevin/appsdev/projects/automation -d:Camelcadedb /home/kevin/appsdev/projects/automation/daily_service_update.pl 
Connected 
(1)Connecting to the IDE from process 28238 at localhost:42079... 
Connected. 

插件的所有其他功能都可以正常工作,設置和停止斷點,單步執行代碼,變量檢查等

我也碰到這個問題的GitHub這似乎依稀相似的運行:

https://github.com/Camelcade/Perl5-IDEA/issues/1391

但是該項目的作者也沒有來自問題記者的後續回覆。

在IntelliJ中是否存在一個設置,我錯過了啓用此功能,或者正在從Perl print語句向調試器控制檯發送輸出中斷?

其它版本信息:

OS版:Fedora 25 64位
的Perl:5.24.1
的IntelliJ:2016年3月4日(JRE:1.8.0_112釋放-408-B6 AMD64,JVM:OpenJDK的64-通過JetBrains sro的位服務器虛擬機)

回答

1

我完全忘記了Perl緩衝區stdout,但我認爲這只是行緩衝;我的print語句也會打印新行。

添加:

$| = 1; 

...到我的代碼的頂部,確保從我print語句的輸出出現在調試器控制檯。

+1

非常好!儘管我廣泛使用相同的設置,但我還沒有遇到需要從調試器獲取控制檯輸出的情況。 – stevieb

+1

@stevieb謝謝。是的,這個東西有一種交互模式,當不作爲cron作業運行時,可以將一堆東西轉儲到'stdout',所以我需要看看輸出是什麼樣的。自從90年代以來,沒有真正寫過任何關鍵的任務關鍵Perl,IntelliJ和這個camelcade插件讓我非常喜歡這個。 – Kev

+0

這不僅是一個非常方便的設置,它完全符合我的'$ job',因爲很多工作都是用Python完成的,而且我們使用該軟件的(許可版本),所以交叉熟悉性非常方便以及。 – stevieb