IntelliJ IDEA的文件和代碼模塊

2018-10-13 14:24 更新

IntelliJ IDEA 中文件模板是創(chuàng)建新文件時(shí)要生成的內(nèi)容的規(guī)范。它們?cè)试S您創(chuàng)建已經(jīng)包含一些初始代碼的源文件。

您可以在 "設(shè)置/首選項(xiàng)" 對(duì)話框的 "文件和代碼模板" 頁(yè)上查看、編輯和創(chuàng)建模板。

IntelliJ IDEA 文件模塊和代碼模板用速度模板語(yǔ)言 (VTL) 編寫(xiě)。

所以,他們可能包括:

  • 固定文本(標(biāo)記,代碼,注釋等);在基于模板的文件中,固定文本按照原樣使用。
  • 文件模板變量;創(chuàng)建文件時(shí),變量被替換為它們的值。
  • #parse 指令;包括 "設(shè)置/首選項(xiàng)" 對(duì)話框的 "文件和代碼模板" 頁(yè)上的 "包含" 選項(xiàng)卡中定義的其他模板。
  • 其他 VTL 結(jié)構(gòu)。

下面是一個(gè)典型的模板示例。(此模板用于創(chuàng)建 Java 類(lèi)。)

#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end
#parse("File Header.java")
public class ${NAME} {
}

在上述的模板中:

  • ${PACKAGE_NAME} 和 ${NAME} 是模板變量。
  • #parse 指令用于包括其他模板文件頭:File Header.java。
  • 第一行包含 #ifVTL 偽指令。

應(yīng)用此模板會(huì)生成一個(gè)文件, 其內(nèi)容類(lèi)似于:

package demo;

/**
 * Created by IntelliJ IDEA.
 * User: John.Smith
 * Date: 6/1/11
 * Time: 12:54 PM
 * To change this template use File | Settings | File and Code Templates.
 */
public class Demo {
}

文件和代碼模塊在項(xiàng)目與默認(rèn)方案上的使用

IntelliJ IDEA 建議在項(xiàng)目或默認(rèn) (全局) 級(jí)別上使用文件和代碼模板。

如果您需要一組可共享的文件和代碼模板,那么這些模板應(yīng)該是每個(gè)項(xiàng)目的;否則模板是全局的,并且屬于整個(gè)工作區(qū)。

IntelliJ IDEA 中文件和代碼模板存儲(chǔ)在以下位置:

  • 默認(rèn)(全局)模板存儲(chǔ)在 IntelliJ IDEA 主目錄中的 config | fileTemplates。
  • 每個(gè)項(xiàng)目文件和代碼模板存儲(chǔ)在 .idea | fileTemplates 文件夾中。這些模板可以在團(tuán)隊(duì)成員之間共享。

預(yù)定義、內(nèi)部和自定義模板

IntelliJ IDEA 提供了一組預(yù)定義的文件和代碼模板。您可以根據(jù)需要使用這些模板, 或者在必要時(shí)對(duì)其進(jìn)行修改。您還可以創(chuàng)建自己的模板(自定義模板)。

內(nèi)部文件和代碼模板是預(yù)定義模板的一個(gè)子集。這些模板與所有其他模板不同,因?yàn)樗鼈儾荒鼙粍h除。

在 "設(shè)置/首選項(xiàng)" 對(duì)話框的 "文件和代碼模板" 頁(yè)上,內(nèi)部模板的名稱(chēng)以粗體顯示。您已修改的自定義模板和預(yù)定義模板的名稱(chēng)顯示為藍(lán)色。

IntelliJ IDEA 何時(shí)使用文件和代碼模板?

IntelliJ IDEA 中無(wú)論何時(shí)創(chuàng)建新文件,您都可以選擇創(chuàng)建一個(gè)空文件(例如:文件| 新建| 文件(File | New | File))或使用文件模板。在后一種情況下,將根據(jù)您選擇的模板生成新文件的初始內(nèi)容。(基本上,新菜單中的所有的選項(xiàng),除了文件、包和目錄以外都對(duì)應(yīng)于使用模板。)

IntelliJ IDEA 何時(shí)使用文件和代碼模板?

模板的選擇是否是上下文相關(guān)?

通常,創(chuàng)建新文件時(shí)可以選擇的一組模板取決于您的模塊的性質(zhì)和配置,以及您當(dāng)前"項(xiàng)目" 工具窗口中的當(dāng)前位置的屬性。例如,如果模塊不是 Flash 模塊,則不會(huì)為ActionScript 類(lèi)或接口或 MXML 組件使用模板。同樣, 您不能選擇在 java 源代碼或測(cè)試目錄 (根) 之外創(chuàng)建 Java 類(lèi)、接口等。

但是,在任何上下文中都有許多可用的模板。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)