W3Cschool
恭喜您成為首批注冊(cè)用戶(hù)
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
Tip:此功能僅在 Ultimate 版本中受支持!
IntelliJ IDEA 支持與各種在后臺(tái)運(yùn)行的第三方編譯器集成,并且可以執(zhí)行以下操作:
請(qǐng)注意,IntelliJ IDEA 不包含內(nèi)置編譯器,但僅支持與您必須下載并安裝在 IntelliJ IDEA 的外部工具的集成。
在 IntelliJ IDEA 中,這些編譯器配置稱(chēng)為 "文件觀察器"。對(duì)于每個(gè)支持的編譯器,IntelliJ IDEA 提供了一個(gè)預(yù)定義的文件觀察程序模板。預(yù)定義文件觀察器模板在 IntelliJ IDEA 級(jí)別可用。要針對(duì)您的項(xiàng)目文件運(yùn)行編譯器,您需要根據(jù)相關(guān)模板創(chuàng)建特定于項(xiàng)目的文件觀察器,至少要指定要在您的機(jī)器上使用的編譯器的路徑。
您可以下載一個(gè)您選擇的編譯器并將其設(shè)置為文件觀察器。但是,在這種情況下,沒(méi)有預(yù)定義的模板可用,因此您必須手動(dòng)指定所有的設(shè)置。
為了適用,文件觀察器必須通過(guò)在設(shè)置對(duì)話框的文件觀察器頁(yè)面上選擇它旁邊的復(fù)選框來(lái)啟用,請(qǐng)參閱啟用和禁用文件觀察器。之后文件監(jiān)視器將在源代碼做出任何修改或保存時(shí)自動(dòng)調(diào)用,具體取決于立即文件同步(Immediate File Synchronization)復(fù)選框是否被選中或清除,請(qǐng)參閱“新觀察器對(duì)話框”。
文件觀察器的輸出存儲(chǔ)在一個(gè)單獨(dú)的文件中。預(yù)定義的模板根據(jù)編譯器類(lèi)型建議可以使用的文件的類(lèi)型。默認(rèn)情況下,當(dāng)?shù)谝淮握{(diào)用文件觀察器時(shí),輸出文件會(huì)在與輸入文件相同的文件夾中創(chuàng)建,于是這個(gè)文件只被更新。您可以在創(chuàng)建文件的過(guò)程中自定義所有這些設(shè)置。
由文件觀察器生成的 JavaScript 文件被排除在代碼完成和重構(gòu)之外。
在項(xiàng)目樹(shù)視圖中,輸出文件顯示在原始文件的下方,顯示為一個(gè)節(jié)點(diǎn)。這是為了提高可視性,以便您可以更輕松地找到必要的文件。
文件觀察器有兩個(gè)專(zhuān)門(mén)的代碼檢查:
創(chuàng)建一個(gè)基于預(yù)定義模板的項(xiàng)目文件觀察器,請(qǐng)執(zhí)行以下常規(guī)步驟:
在 "新觀察器" 對(duì)話框的 "選項(xiàng)" 區(qū)域中,配置 "文件觀察器" 的行為:將調(diào)用它的事件、可以從中調(diào)用的文件、要顯示的控制臺(tái)等。
該選項(xiàng)僅適用于 Babel、Closure Compiler、Compass、Jade、Less、Sass / SCSS、Stylus、UglifyJS 和 YUI Compressor JS。
$FILE_PATH$:$LINE$ $MESSAGE$
在“觀察文件”區(qū)域中,指定要由文件觀察器處理的文件的類(lèi)型和位置。
默認(rèn)情況下,該字段根據(jù)所選的預(yù)定義文件觀察器模板顯示文件類(lèi)型。
您可以從下拉列表中選擇一個(gè)預(yù)定義的范圍:
VCS 作用域:只有在項(xiàng)目處于版本控制的情況下,這些作用域才可用。
Default
相關(guān)的文件。有關(guān)范圍的更多詳細(xì)信息,請(qǐng)參閱“范圍和范圍對(duì)話框”頁(yè)面。
范圍設(shè)置覆蓋了僅跟蹤根文件復(fù)選框設(shè)置:如果依賴(lài)關(guān)系超出了指定范圍,則文件觀察器不適用于它。
在“觀察器設(shè)置”區(qū)域中,配置與編譯器的交互:指定可執(zhí)行文件的路徑、傳遞給它的參數(shù)、可接受的輸入和預(yù)期的輸出文件類(lèi)型等。
.exe
,.cmd
,.bat
,或其他取決于特定工具,.jar
的存檔也可以接受,但為它們定義PATH
變量是不支持的),執(zhí)行下列操作之一:
執(zhí)行以下操作之一:
指定參數(shù)時(shí),請(qǐng)遵循以下規(guī)則:
some" "arg
或"some arg"
。-Dmy.prop=\"quoted_value"\
)將雙引號(hào)括起來(lái)。請(qǐng)注意,更改此文本框中的值并不能使編譯器將其輸出存儲(chǔ)在另一個(gè)位置。要做到這一點(diǎn),在參數(shù)文本框中指定所需的輸出位置。
執(zhí)行以下操作之一:
在“其他選項(xiàng)”區(qū)域,指定高級(jí)編譯器配置設(shè)置。
如果該字段留空,IntelliJ IDEA 將使用文件觀察器被調(diào)用的文件所在的目錄。
standard output stream (stdout)
)并從它生成結(jié)果文件,從 stdout 復(fù)選框中選擇 Create output file。一些編譯器會(huì)生成一個(gè)standard output stream (stdout)
文件,而其他的則不會(huì),這可能會(huì)導(dǎo)致錯(cuò)誤。因此,強(qiáng)烈建議保留默認(rèn)設(shè)置。
為了切換文件觀察器的啟用/禁用狀態(tài),在設(shè)置對(duì)話框的文件觀察者頁(yè)面上選擇/清除復(fù)選框。如果在運(yùn)行文件觀察器時(shí)發(fā)生了一個(gè)錯(cuò)誤,則文件監(jiān)視器被自動(dòng)禁用。要恢復(fù)狀態(tài),請(qǐng)手動(dòng)啟用文件觀察器。
當(dāng)一個(gè) “文件觀察器”已啟用,只要編輯適用的文件被更改或保存,它就會(huì)自動(dòng)啟動(dòng),請(qǐng)參閱配置文件觀察器的行為。
任何編譯器都是外部的第三方工具。因此影響編譯器的唯一方法就是將參數(shù)傳遞給它,就像您在命令行模式下工作一樣。這些參數(shù)對(duì)于每個(gè)工具都是特定的。下面是為 CoffeeScript 編譯器定制默認(rèn)輸出位置的兩個(gè)示例。
假設(shè),您有一個(gè)具有以下文件夾結(jié)構(gòu)的項(xiàng)目:
默認(rèn)情況下,生成的文件將存儲(chǔ)在原始文件所在的文件夾中。
您可以更改此默認(rèn)位置并將生成的文件存儲(chǔ)在 js 文件夾中。而且,您可以將它們存儲(chǔ)在一個(gè)平面列表中,或者放置在重復(fù) app 節(jié)點(diǎn)下的原始結(jié)構(gòu)的文件夾結(jié)構(gòu)中。
output $ProjectFileDir$\js\ --compile --map $FileName$
$ProjectFileDir$\js\$FileNameWithoutExtension$.js:$ProjectFileDir$\js\$FileNameWithoutExtension$.map
結(jié)果,項(xiàng)目樹(shù)如下所示:
output $ProjectFileDir$\js\$FileDirRelativeToProjectRoot$\ --compile --map $FileName$
$ProjectFileDir$\js\$FileDirRelativeToProjectRoot$\$FileNameWithoutExtension$.js:$ProjectFileDir$\js\$FileDirRelativeToProjectRoot$\$FileNameWithoutExtension$.map
結(jié)果,項(xiàng)目樹(shù)如下所示:
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: