# 新建监视器对话框

> For the complete documentation index, see [llms.txt](https://www.jetbrains.com/zh-cn/help/idea/llms.txt).

> **TL;DR**
> `文件 | 设置 | 工具 | File Watchers - 新建 Watcher`  适用于 Windows 和 Linux
>
>
>
> `%instance% | 设置 | 工具 | 文件监视器 - 新建监视器`  适用于 macOS
>
>
>
> `Ctrl+Alt+S` (Windows), `⌘ Comma` (macOS), `⌘ Comma` (IntelliJ IDEA Classic (macOS)), `⌘ Comma` (macOS System Shortcuts), `Ctrl+Alt+S` (XWin), `Ctrl+Alt+S` (GNOME), `Ctrl+Alt+S` (KDE), `Ctrl+Alt+S` (Emacs), `Ctrl+Alt+S` (Sublime Text), `⌘ Comma` (Sublime Text (macOS)), `Ctrl+Alt+S` (Visual Studio), `⌘ Comma` (Visual Studio (macOS)), `Ctrl+Alt+S` (NetBeans), `Ctrl+Alt+S` (Eclipse), `⌘ Comma` (Eclipse (macOS)) !["设置"图标](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.settings.svg)

> **Note: 前提**
> [安装](managing-plugins.html#install_plugin_from_repo)并启用   File Watchers   插件。

> **Warning:**
> 在  安全模式 下打开项目时，File Watchers 不会启动。 更多信息请参阅 [项目安全](project-security.html)。

当您在 [文件监视器页面](settings-tools-file-watchers.html) 上点击   添加    !["添加"按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.add.svg) 或   编辑    ![编辑按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.edit.svg) 按钮时，将打开该对话框。 使用该对话框基于预定义的 IntelliJ IDEA File Watcher 模板创建一个项目 File Watcher 或编辑一个现有的项目 File Watcher。

每个模板都包含了为所选工具优化的设置。 所以在大多数情况下，您只需指定工具可执行文件的路径。

## 名称

在   名称   字段中，输入文件关注者的名称。 默认情况下，IntelliJ IDEA 会建议所选预定义模板的名称。

## 要观察的文件

|  文件类型  |     请使用此列表指定预期的输入文件类型。 文件关注者将仅把此类型的文件视为分析和处理对象。 文件类型是根据 [文件类型和文件扩展名之间的关联](creating-and-registering-file-types.html#register-new-association)来识别的。      > **Tip:** > 默认情况下，该字段会根据所选预定义模板显示文件类型。    |
|  范围  |     使用此列表定义文件关注者可应用到的文件范围。       这些文件中的更改会根据   自动保存已编辑的文件以触发监视器   复选框的状态，立即或在保存或框架停用时调用文件关注者。       从列表中选择一个预定义作用域。 对于项目级文件关注者，还可以点击 ![浏览按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.general.ellipsis.svg) 在打开的   作用域   对话框中配置自定义作用域。        * 所有位置： 以下列出的所有作用域。    * 项目文件： 项目内容根目录中的所有文件（请参阅 [内容根](content-roots.html)）。    * 项目生产文件： 项目内容根中的所有文件，不包括测试源。    * 项目测试文件： 项目测试源根目录中的所有文件。    * 临时文件和控制台： 位于 项目 工具窗口中的 临时文件和控制台 目录中的所有文件。    * 打开的文件： 当前在编辑器中打开的所有文件。    * 当前文件： 在活动编辑器选项卡中打开的文件。        VCS 范围：   这些范围仅在您的 [项目处于版本控制下](enabling-version-control.html#associate_project_with_VCS)时才可用。        * 所有更改的文件： 所有已更改的文件，即与所有现有更改列表关联的所有文件。    * 默认更改列表： 与更改列表  `默认` 关联的所有文件。      或者，点击 ![浏览按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.general.ellipsis.svg)，并在打开的  作用域  对话框中配置  自定义作用域 。      |
|  仅跟踪根文件  |   根文件 是不会（例如通过  `import` ）被 [指定作用域内](#scope)的任何其他文件包含的文件。     * 当选中此复选框时，File Watcher 仅针对 root files 运行。    * 清除此复选框后，文件关注者会针对调用它的文件，以及在指定作用域内递归包含该文件的所有文件运行。      请注意，   范围   设置会重写   仅跟踪根文件   复选框设置：如果依赖项位于指定作用域之外，则不会对其应用文件关注者。        例如  假设您有两个文件  `root.scss`  和  `another.scss` ，其中  `root.scss`  导入了  `another.scss` 。 在选中   仅跟踪根文件  复选框的情况下，编辑  `another.scss` 只会调用  `root.scss` 上的File Watcher。 否则，如果选中框未选中，File Watcher 将处理这两个文件。      > **Tip:** > 此选项仅适用于  Babel 、  Closure 编译器 、  Jade 、  Less 、  Sass /  SCSS 、  Stylus  和  UglifyJS (terser) 。    |

## 更改时运行的工具

在此区域，配置与该工具的交互：指定要使用的可执行文件、要传递给它的参数，以及 IntelliJ IDEA 应该在哪里查找工具的输出。

|  程序  |     在此字段中，指定工具的可执行文件的路径(  `.com` 、  `.exe` 、  `.cmd` 、  `.bat` 或其他，具体取决于具体的工具)。      > **Tip:** > * 要使用程序文件名而不是文件名路径，请将其文件夹的路径添加到系统环境变量 PATH。 > > * 在 Windows 上，可以省略 `.com` 、 `.exe` 、 `.cmd` 或 `.bat` 扩展程序。 > > * 要使用 `jar` 归档，请指定其绝对路径。 或者，为了使用相对路径，请将其父文件夹添加到 [IntelliJ IDEA 路径变量](absolute-path-variables.html) 中，在 外观 & 行为 \| 路径变量 设置页面 `Ctrl+Alt+S` (Windows), `⌘ Comma` (macOS), `⌘ Comma` (IntelliJ IDEA Classic (macOS)), `⌘ Comma` (macOS System Shortcuts), `Ctrl+Alt+S` (XWin), `Ctrl+Alt+S` (GNOME), `Ctrl+Alt+S` (KDE), `Ctrl+Alt+S` (Emacs), `Ctrl+Alt+S` (Sublime Text), `⌘ Comma` (Sublime Text (macOS)), `Ctrl+Alt+S` (Visual Studio), `⌘ Comma` (Visual Studio (macOS)), `Ctrl+Alt+S` (NetBeans), `Ctrl+Alt+S` (Eclipse), `⌘ Comma` (Eclipse (macOS))。    |
|  参数  |     在此字段中，定义传递给工具的参数，从而影响其行为。       参数通常使用 [宏](built-in-macros.html)指定，例如，  `$FileName$` 或  `$FileNameWithoutExtension$` ，这些将被替换为实际的文件名。       手动输入宏，或点击 ![插入宏图标](https://resources.jetbrains.com/help/img/idea/2026.3/app.general.inlineAddHover.svg)，并在打开的   宏   对话框的列表中选择相关模式。      > **Tip:** > 指定实参时，请遵循以下规则： > > * 使用空格作为分隔符。 > > * 如果实参包含空格，请将其或整个实参用双引号括起来： `some" "arg` 或 `"some arg"` 。 > > * 如果实参包含双引号，请使用反斜杠对其进行转义： `-Dmy.prop="quoted_value"\` 。    |
|  要刷新的输出路径  |     在此字段中，告诉 IntelliJ IDEA 应该在哪里搜索工具的输出：生成的源代码、源映射、依赖项或文件本身。 输出位置是特定于工具的。       通常使用 [宏](built-in-macros.html) 指定输出路径。 可以手动输入它们，或点击 ![插入宏图标](https://resources.jetbrains.com/help/img/idea/2026.3/app.general.inlineAddHover.svg)，并在打开的对话框的列表中选择相关项。       要指定多个宏，请使用冒号  `:` 作为分隔符，例如，  `$FileNameWithoutExtension$.css:$FileNameWithoutExtension$.css.map` 。         > **Note:** > 更改   要刷新的输出路径   字段中的值不会让工具将其输出存储到其他位置。 如果仍需要这样做，请在   参数   字段中指定所需的自定义输出位置：使用冒号作为分隔符输入输出路径，并使用宏。       |

## 工作目录和环境变量

|  工作目录  |     在此字段中，指定将工具应用的目录。 由于工具始终在文件上下文中调用，因此默认工作目录是当前文件的目录。 默认工作目录在所有预定义模板中通过  `$FileDir$`  宏指定。 要指定自定义工作目录，请在字段中输入其路径，或点击 ![浏览图标](https://resources.jetbrains.com/help/img/idea/2026.3/app.general.openDiskHover.svg) 并在   选择路径   对话框中选择目录，或点击 ![插入宏图标](https://resources.jetbrains.com/help/img/idea/2026.3/app.general.inlineAddHover.svg) 并选择所需的 [宏](built-in-macros.html)（位于   宏   对话框的列表中）。      > **Tip:** > 如果您将   工作目录   字段留空，IntelliJ IDEA 将使用调用 File Watcher 的文件目录。    |
|  环境变量  |  在此字段中，指定工具所需但在操作系统级别未指定的环境变量。  |

## 高级选项

|  自动保存已编辑的文件以触发监视器  |      * 选中此复选框后，IntelliJ IDEA 会在您编辑文件时立即保存该文件，从而使 File Watcher 立即启动。    * 清除此复选框后，文件关注者会在保存（ `文件 \| 全部保存` ）时或当焦点从 IntelliJ IDEA 移开时（框架停用）启动。    |
|  在外部更改时触发监视器  |      * 选中此复选框后，文件关注者会在其作用域内的文件发生任何更改时唤醒，包括在 IntelliJ IDEA 外部进行的更改，或在版本控制系统中检出分支后的更改。    * 清除此复选框后，文件关注者仅在其作用域内的文件从 IntelliJ IDEA 更新时启动，并忽略其他更改，例如从版本控制系统接收的更改。    |
|  无论是否存在语法错误都触发关注者  |      * 选中复选框时，File Watcher 会在文件语法正确与否的情况下启动。 根据 自动保存已编辑的文件以触发监视器 复选框的状态，文件观察器将在更新、保存或撤销框架时启动。    * 清除此复选框时，File Watcher 会忽略语法无效文件中的所有触发器，仅在无错误的文件中启动。    |
|  从 stdout 创建输出文件  |      * 在大多数情况下，应该取消选中此复选框，因为大多数工具直接将输出写入相关文件。    * 选中此复选框时，IntelliJ IDEA 会读取本机工具的输出 `标准输出流 (stdout)` 并由其生成结果文件。 生成文件的名称取自 要刷新的输出路径 字段。 如果该字段包含多个名称，将使用列表中的第一个。    |
|  显示控制台  |     从此列表中选择您希望 File Watcher 何时打开控制台。        * 始终： 使用此选项时，工具执行完成后始终打开控制台。    * 出错时： 使用此选项时，仅当 `退出代码` 不同于 `0` 时，工具执行后才会打开控制台。    * Never: 选择此选项可完全禁止打开控制台。    |
|  输出过滤器  |     在此字段中，指定与该工具关联的输出过滤器。 根据这些过滤器，工具输出中的绝对文件路径和行号会转换成超链接。 点击这些链接将在编辑器中打开相应的文件。    例如，要显示有用的错误信息，请输入  `$FILE_PATH$:$LINE$ $MESSAGE$`         |

## See also

### 过程

[File Watchers](using-file-watchers.html)

### 参考

[File Watchers](settings-tools-file-watchers.html)

