在Java程式語言和環境中,即時編譯器(JIT compiler,just-in-time compiler)是一個把Java的位元組碼(包括需要被解釋的指令的程式)轉換成可以直接傳送給處理器的指令的程式。
過去,大多數用任何語言寫的程式在每個電腦平台上都必須重編譯,甚至有時需要重寫。Java最大的優點之一就是你只需要寫和編譯一次程式。在任何平台上,Java都會將編譯好的位元組碼解釋成能被特定的處理器所理解的指令(即一次編譯,到處運行)。儘管如此,Java虛擬機一次只能處理一條位元組碼指令。在特定的系統平台上使用Java即時編譯器(包括C1,C2 兩個即時編譯器)能把位元組碼編譯成特定系統的代碼(雖然這個程式最初已經在這個平台上被編譯過)。一旦代碼被JIT編譯器(重)編譯後,它在電腦上通常就會運行地更快。
即時編譯器(JIT compiler)隨虛擬機一起供給的,並可選使用。它把位元組碼編譯成可立即執行的指定平台的可執行代碼。Sun微系統建議,選擇JIT編譯器選項通常會使程式運行地更快,尤其是當某個可執行的方法被重複使用時。