2013-04-28 54 views
8

下面是代碼:爲什麼IntelliJ IDEA會爲System.out.println提供'Expression語句不是一個賦值或調用'錯誤?

public class TryStuffOutHere 
{ 
    public static void main(String[] args) 
     { 
      System.out.println("Set the customer's name: "); 
     } 

} 

當我鍵入此,IntelliJ IDEA的停止突出串「將客戶的名字:」在所有的一種顏色像它對於其他字符串常量,並把紅色的波浪線在單詞和顯示之間「表達式聲明不是轉讓或呼叫」。但是,如果我行更改爲:

System.out.print("Set the customer's name: "); 

字符串再次看起來像一個正常的字符串賦值(都是一個顏色,沒有檢查下垂)。

即使單獨聲明字符串並輸出變量仍然會產生問題。

我附上了三張圖片來說明我在說什麼。有沒有人對發生了什麼有什麼想法? 顯然,我不允許發佈圖像。如果你想/需要截圖,請告訴我。我很樂意按你的方式寄給他們。

更新(2013年4月28日):嗯,我現在有足夠的點來添加屏幕截圖。所以,在這裏它們是:

圖像1
enter image description here

圖像2
enter image description here

圖像3
enter image description here

圖像4
enter image description here

我也發現在使緩存失效並重新啓動IDE之後的10-12秒延遲是因爲IDE仍在「更新索引」。之後,問題立即彈出...有時候。更復雜的是,使緩存無效並重新啓動已經兩次,直到我退出並再次打開IDE,然後重新開始。

+1

您可以在其他站點上傳圖片並在此共享鏈接 – Jayan 2013-04-28 07:20:00

+0

社區或終極版?是否有可能將它作爲一些支持的語言來獲取字符串? (sql或者其他) – radai 2013-04-28 07:46:31

+1

'File' | '無效緩存',重啓。 – CrazyCoder 2013-04-28 12:29:35

回答

9

看起來它試圖將代碼解釋爲java之外的其他語言。

是否有一些額外的插件活動?嘗試儘可能多地禁用,以確保它們都不會造成干擾

+0

這個答案的組合,Radai's和CrazyCoder的建議解決了這個問題。而不是禁用一切,我做到了這一點: 1)點擊字符串 2)點擊燈泡(發現ALT + ENTER帶來了相同的菜單) 3)看到列表底部的'蘋果JS'是它認爲在那裏的語言。 4)禁用'Java支持'插件,問題解決了。 5)重新啓用所有插件,返回問題。 6)點擊字符串,點擊alt + enter,然後點擊'Uninject language',解決問題,即使在重新啓動後。 感謝大家的幫助!希望有一天這將會有其他人。 – nihilon 2013-04-29 11:10:20

8

我會嘗試刪除緩存並重新啓動。這聽起來像是IntelliJ中的一個腐敗狀態,我也會確保你有最新版本12.1

+0

好吧,我確認我使用的是版本12.1旗艦版。你的答案約10-12秒,並突然恢復。所以,我猜測它是在正確的軌道上,我還可以嘗試採取更多措施嗎? – nihilon 2013-04-28 22:38:45

+2

這是「搞砸了」我自己從來沒有見過這個問題。我能想到的是,你有一個令人困惑的插件。我建議你嘗試關閉你不需要的插件,然後重試。 – 2013-04-29 06:30:56

相關問題