2011-10-22 42 views
0

當我調用命令行Scala編譯器,用我自己的編譯器插件,我用下面的兩個參數,看看會發生什麼:如何讓Scala IDE演示編譯器向您展示編譯器插件的日誌輸出?

-Ylog:generatewrappers -Xprint:generatewrappers 

這給了我,我需要的所有信息。在Scala IDE內部使用與Eclipse相同的插件,這些選項在編譯器屬性中尚不可用。如果我只是將它們放在「其他命令行參數」字段中,就像上面那樣,但它看起來沒有任何效果,儘管我可以看到插件正在完成它的工作。

那麼,如何讓Eclipse在Eclipse控制檯視圖或問題視圖中顯示插件/編譯器的輸出(或者是否有特殊的其他視圖)呢?

編輯:如果有人關心,我得到了非常有用的錯誤消息:

Error in Scala compiler: null 

,這是非常令人沮喪的。我嘗試使用-Ypresentation日誌選項,希望至少獲得該文件的輸出,但它包含所有是這樣的:

"wait for more work"(
), 
"atnode"(
    1, 
    1319373203925), 
"asked"(
), 
"atnode"(
    2, 
    1319373203926), 
... 
"exception thrown"(
    "scala.tools.nsc.interactive.ShutdownReq$"(
    )) 

當我使用命令行編譯此錯誤不來相同的選項,所以我沒有辦法在沒有實際演示編譯器輸出的情況下進行調試。

+0

演示文稿編譯器會將問題記錄到問題視圖中,但是在級別Info中。你確定你在問題視圖中顯示所有項目嗎? Show-> Show All?我不記得編譯器插件的日誌消息是否顯示在那裏,但編譯器消息肯定會執行,如果你有-Ypresentation-debug或-Ypresentation -verbose選中。 –

回答

2

所有編譯器日誌消息都是printlns。他們去標準輸出。從命令提示符運行Eclipse以查看它們。

+0

還沒有嘗試過,但這聽起來合理,所以你得到的積分。 –

+0

謝謝。讓我知道它是如何工作的。 –