如果項目中存在(無關的!)編譯錯誤,是否有方法在Scala IDE 2.0.2(Eclipse 3.7)中運行Scala應用程序或單元測試?在Scala IDE中運行Scala應用程序,出現編譯錯誤
在Java中,這是沒有問題的,但斯卡拉IDE不斷告訴我:
項目包含編譯錯誤(因此,已經生產無二進制文件)。
我想要做的就是在主要重構過程中運行一個小測試,但我現在無法修復所有編譯錯誤。我不想開始評論事情,因爲那些編譯錯誤很好地提醒仍然需要完成的任務。
如果項目中存在(無關的!)編譯錯誤,是否有方法在Scala IDE 2.0.2(Eclipse 3.7)中運行Scala應用程序或單元測試?在Scala IDE中運行Scala應用程序,出現編譯錯誤
在Java中,這是沒有問題的,但斯卡拉IDE不斷告訴我:
項目包含編譯錯誤(因此,已經生產無二進制文件)。
我想要做的就是在主要重構過程中運行一個小測試,但我現在無法修復所有編譯錯誤。我不想開始評論事情,因爲那些編譯錯誤很好地提醒仍然需要完成的任務。
目前的Scala IDE不支持這種行爲,但如果它能這將是很好。
要意識到這一點,我創建了一個ticket:
JDT儘管允許在源編譯問題執行Java代碼。 JDT在內部用一個例外代替有缺陷的代碼,如果相關的代碼被執行,則會引發這個例外。但是如果在執行過程中永遠不會調用有缺陷的代碼,則不會發生任何錯如果SDT支持類似的行爲,那將會很好。
如果您使用Scala 2.10,一個不錯的選擇是使用新引入的???
表示法。這樣,即使函數尚未實現,您的代碼也會被編譯。
當然有更好的方法,但這個仍然會比評論代碼更好。
正如加斯帕建議,你仍然可以實現???
如果你使用Scala的早期版本工作:
def ??? : Nothing = throw new Error("Not implemented")
有趣的是,我不知道JDT必須做這樣的事情來支持這個功能。我認爲它以某種方式執行完全排除了類路徑中錯誤類的程序。但是這更有意義。感謝票和解釋。 – rolve