# Run/Debug configuration: XSLT

The XSLT run configuration executes an XSLT transformation by applying an XSLT stylesheet to an XML document and producing transformed output.

Procedure: Enable the XPathView + XSLT plugin

This functionality relies on the [XPathView + XSLT](https://plugins.jetbrains.com/plugin/12478-xpathview--xslt)  plugin, which  is bundled and enabled in IntelliJ IDEA   by default. If the relevant features are not available, make sure that you did not disable the plugin.

> **Note:**
> The XPathView + XSLT plugin is available by default only in IntelliJ IDEA  with the Ultimate subscription. For IntelliJ IDEA, you need to install the XPathView + XSLT plugin as described in [Plugins](managing-plugins.html).

1. Press `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` (NetBeans), `Ctrl+Alt+S` (Visual Studio), `⌘ Comma` (Visual Studio (macOS)), `Ctrl+Alt+S` (Eclipse), `⌘ Comma` (Eclipse (macOS)) to open settings and then select `Plugins`.

2. Open the Installed tab, find the XPathView + XSLT plugin, and select the checkbox next to the plugin name.

Procedure: Create a new XSLT configuration

1. In the main menu, go to `Run | Edit Configurations`.

2. In the Run/Debug Configuration dialog, click ![](https://resources.jetbrains.com/help/img/idea/2026.2/app.expui.general.add.svg) on the toolbar or press `Alt+Insert` (Windows), `⌘ N` (macOS), `⌃ N` (IntelliJ IDEA Classic (macOS)), `⌘ N` (macOS System Shortcuts), `Alt+Insert` (XWin), `Alt+Insert` (GNOME), `Alt+Insert` (KDE), `Alt+Insert` (Emacs), `Alt+Insert` (Sublime Text), `⌘ N` (Sublime Text (macOS)), `Alt+Insert` (NetBeans), `Alt+Insert` (Visual Studio), `⌘ ⌃ N` (Visual Studio (macOS)), `Alt+Insert` (Eclipse), `⌘ N` (Eclipse (macOS)).

The list shows the run/debug configuration templates. Select XSLT on the left.

On the right, you will see configuration options.

![Run Settings](https://resources.jetbrains.com/help/img/idea/2026.2/run-settings.png)

## Settings tab

| Item | Description |
| --- | --- |
| Input |    Use the controls in this area to specify the XML file you want to process and the script you want to execute.        * XSLT script file: specify the path to the XSLT Style Sheet file. You can enter the path manually or click Browse ![the Browse button](https://resources.jetbrains.com/help/img/idea/2026.2/app-client.expui.inline.browse.svg) and select the file in the Choose XSLT File dialog.    * Choose XML input file: select the XML file to be transformed. This field lists all XML files associated with the selected Style Sheet through the File Associations functionality. To use a file that is not listed, click Browse ![the Browse button](https://resources.jetbrains.com/help/img/idea/2026.2/app-client.expui.inline.browse.svg) and select it in the Choose XML File dialog.    |
| Output |    Use the controls in this area to configure handling of the script output.       * Show in Default Console: select this option to have the output displayed in the normal run console, together with any warnings and error messages from the XSLT transformer, as well as messages generated by the script, for example, by `xsl:message`.    * Show in Extra Console Tab: select this option to have the produced output displayed in an extra, XSLT Output tab. This option is selected by default.    * Highlight Output As: select the file type to highlight the output as.    * Save to File: select this option to have the output saved directly to a file. In the field, specify the name of the target file. Type the path to the file manually or click Browse ![the Browse button](https://resources.jetbrains.com/help/img/idea/2026.2/app.general.ellipsis.svg) and select the desired file in the Choose Output File dialog, that opens. If you type the name of a file that does not exist, IntelliJ IDEA will create a file and save the output to it. * Open File in Editor After Execution: select this checkbox to have the file with the output opened in the editor after the script is executed successfully. * Open File in Web Browser After Execution: select this checkbox to have the file with the output opened in the configured Web browser after the script is executed successfully. > **Warning:** > The specified file will be overwritten without requesting for confirmation.    |
| Parameters |    Use the controls in this area to create and manage a list of parameters to be passed to the script.        * Add ![Add](https://resources.jetbrains.com/help/img/idea/2026.2/app.expui.general.add.svg) - click this button to create a new entry.    * Remove ![Remove](https://resources.jetbrains.com/help/img/idea/2026.2/app.expui.general.remove.svg) - click this button to remove the selected entry from the list.    * Name - in this field, specify the name of the parameter.    * Value - in this field, specify the value of the parameter. > **Warning:** > The field is mandatory. Parameters without values are not passed to the script. Values are not assigned by default.    |

## Advanced tab

In this tab, configure additional options that are not commonly required in run configurations.

| Item | Description |
| --- | --- |
| Smart Error Handling |      * Clear this checkbox to have the console display full error messages including their complete stack traces, when an error occurs during execution.    * Select this checkbox to suppress showing stack trace and have the console display only the relevant information about errors.    |
| VM Arguments | In this field, specify optional VM arguments to be passed to the VM where the XSLT script is executed. These can be heap size, garbage collection options, file encoding, etc. If the line of VM arguments is too long, click ![Expand](https://resources.jetbrains.com/help/img/idea/2026.2/app.general.expandComponent.svg) to expand the field and type the text there.  |
| Working Directory |    In this field, specify the working directory to use. Type the path manually or click Browse ![the Browse button](https://resources.jetbrains.com/help/img/idea/2026.2/app.general.ellipsis.svg) and select the desired folder in the Working Directory dialog, that opens.                           If no folder is specified in field, the working directory will be the one where the XSLT script file is located.                      |
| Classpath and JDK |    In this area, specify the environment to run the script in. By default, it is the module the XSLT file belongs to.        * From Module - select this option to execute the script in a specific module. From this list, select the desired module. > **Tip:** > The full classpath to the selected module is included. This can be required if the script uses custom XSLT Extension Functions.    * Use JDK - select this option to choose the JDK without including anything module- or project-related into the classpath. > **Tip:** > It can be useful to explicitly choose a specific JDK to test the script with.    |

## Common settings

When you edit a run configuration (but not a run configuration template), you can specify the following options:

| Item | Description |
| --- | --- |
| Name | Specify a name for the run configuration to quickly identify it among others when editing or running. |
|  Allow multiple instances |    Allow running multiple instances of this run configuration in parallel.                           By default, it is disabled, and when you start this configuration while another instance is still running, IntelliJ IDEA suggests stopping the running instance and starting another one. This is helpful when a run configuration consumes a lot of resources and there is no good reason to run multiple instances.     |
| Store as project file |     Save the file with the run configuration settings to share it with other team members. The default location is `.idea/runConfigurations`. However, if you do not want to share the `.idea` directory, you can save the configuration to any other directory within the project.                           By default, it is disabled, and IntelliJ IDEA stores run configuration settings in `.idea/workspace.xml`.    |

## Before launch

In this area, you can specify tasks to be performed before starting the selected run/debug configuration. The tasks are performed in the order they appear in the list.

| Item | Shortcut | Description |
| --- | --- | --- |
| ![the Add button](https://resources.jetbrains.com/help/img/idea/2026.2/app.expui.general.add.svg) | `Alt+Insert` (Windows), `⌘ N` (macOS), `⌃ N` (IntelliJ IDEA Classic (macOS)), `⌘ N` (macOS System Shortcuts), `Alt+Insert` (XWin), `Alt+Insert` (GNOME), `Alt+Insert` (KDE), `Alt+Insert` (Emacs), `Ctrl+N` (Sublime Text), `⌘ N` (Sublime Text (macOS)), `Alt+Insert` (NetBeans), `Ctrl+N` (Visual Studio), `⌘ N` (Visual Studio (macOS)), `Alt+Insert` (Eclipse), `⌘ N` (Eclipse (macOS)) |    Click this icon to add one of the following available tasks:        * Launch Web Browser: select this option to have a browser started. In the dialog that opens, select the type of the browser and provide the start URL. Also, specify if you want the browser to be launched with the JavaScript debugger.    * Run External tool: select to run an external application. In the dialog that opens, select one or multiple applications you want to run. If it is not defined in IntelliJ IDEA yet, add its definition. For more information, refer to [External tools](configuring-third-party-tools.html) and [External tools settings](settings-tools-external-tools.html).    * Run Another Configuration: select to execute another run/debug configuration and wait until it finishes before starting the current configuration. If you want to run several configurations in parallel, use a [compound run/debug configuration](run-debug-multiple.html#compound-configs) .    * Build: select to compile the specified module. The [Build Module command](compiling-applications.html#compile_module) will be executed. If an error occurs during compilation, IntelliJ IDEA won't attempt to start the run/debug configuration.    * Build Project: select to compile the entire project. The [Build Project command](compiling-applications.html#compile_module) will be executed. If an error occurs during compilation, IntelliJ IDEA won't attempt to start the run/debug configuration.    * Build, no error check: the same as the Build option, but IntelliJ IDEA will try to start the run/debug configuration irrespective of the compilation results.    * Build Artifacts: select this option to build an [artifact](working-with-artifacts.html) or artifacts. In the dialog that opens, select the artifact or artifacts that should be built.    * Run Remote External Tool: adds a [remote SSH external tool](settings-tools-remote-ssh-external-tools.html).    * Run Grunt task: select this option to run a Grunt task. In the Grunt task dialog that opens, specify the `Gruntfile.js` where the required task is defined, select the task to execute, and specify the arguments to pass to the Grunt tool. Specify the location of the Node.js runtime, the parameters to pass to it, and the path to the grunt-cli package.    * Run gulp task: select this option to run a Gulp task. In the Gulp task dialog that opens, specify the `Gulpfile.js` where the required task is defined, select the task to execute, and specify the arguments to pass to the Gulp tool. Specify the location of the Node.js runtime, the parameters to pass to it, and the path to the gulp package.    * Run Maven Goal: select this option to [run a Maven goal](work-with-maven-goals.html). In the dialog that opens, select the goal to be run.    * Run npm script: select this option to execute an npm script. In the NPM Script dialog that opens, specify the [npm run/debug configuration settings](installing-and-removing-external-software-using-node-package-manager.html).    * Compile TypeScript: select to run the built-in TypeScript compiler and thus make sure that all the changes you made to your TypeScript code are reflected in the generated JavaScript files. In the TypeScript Compile Settings dialog that opens, select or clear the Check errors checkbox to configure the behaviour of the compiler in case any errors are detected: * If the Check errors checkbox is selected, the compiler will show all the errors and the run configuration will not start. * If the Check errors checkbox is cleared, the compiler will show all the detected errors but the run configuration still will be launched.    * Upload files to Remote Host: select this option to have the application files automatically [uploaded to the server](configuring-synchronization-with-a-remote-host.html) according to the default server access configuration.    * Disconnect Data Source: select this option if you want to disrupt the connection to a data source before the run/debug configuration is run.     |
| ![the Remove button](https://resources.jetbrains.com/help/img/idea/2026.2/app.expui.general.remove.svg) | `Alt+Delete` (Windows), `⌘ ⌦` (macOS), `⌘ ⌦` (IntelliJ IDEA Classic (macOS)), `⌘ ⌦` (macOS System Shortcuts), `Alt+Delete` (XWin), `Alt+Delete` (GNOME), `Alt+Delete` (KDE), `Alt+Delete` (Emacs), `Alt+Delete` (Sublime Text), `⌘ ⌦` (Sublime Text (macOS)), `Alt+Delete` (NetBeans), `Ctrl+R, D` (Visual Studio), `⌘ R, D` (Visual Studio (macOS)), `Alt+Delete` (Eclipse), `Alt+Delete` (Eclipse (macOS)) |  Click this icon to remove the selected task from the list.  |
|  ![Edit](https://resources.jetbrains.com/help/img/idea/2026.2/app.expui.general.edit.svg)  |  `Enter` (Windows), `⏎` (macOS), `⏎` (IntelliJ IDEA Classic (macOS)), `⏎` (macOS System Shortcuts), `Enter` (XWin), `Enter` (GNOME), `Enter` (KDE), `Enter` (Emacs), `Enter` (Sublime Text), `⏎` (Sublime Text (macOS)), `Enter` (NetBeans), `Enter` (Visual Studio), `⏎` (Visual Studio (macOS)), `Enter` (Eclipse), `⏎` (Eclipse (macOS))  | Click this icon to edit the selected task. Make the necessary changes in the dialog that opens.  |
|     ![Method up](https://resources.jetbrains.com/help/img/idea/2026.2/app.expui.general.moveUp.svg)       ![Method down](https://resources.jetbrains.com/help/img/idea/2026.2/app.expui.general.moveDown.svg)     |     `Alt+Up` (Windows), `⌃ ⇧ ↑` (macOS), `⌃ ↑` (IntelliJ IDEA Classic (macOS)), `⌃ ⌥ ↑` (macOS System Shortcuts), `Alt+Up` (XWin), `Alt+Up` (GNOME), `Alt+Up` (KDE), `Alt+Up` (Emacs), `Alt+Up` (Sublime Text), `Alt+Up` (Sublime Text (macOS)), `Ctrl+Alt+Up` (NetBeans), `Alt+Up` (Visual Studio), `⌃ ⇧ ↑` (Visual Studio (macOS)), `Ctrl+Shift+Up` (Eclipse), `⌃ ⌥ ↑` (Eclipse (macOS))       `Alt+Down` (Windows), `⌃ ⇧ ↓` (macOS), `⌃ ↓` (IntelliJ IDEA Classic (macOS)), `⌃ ⌥ ↓` (macOS System Shortcuts), `Alt+Down` (XWin), `Alt+Down` (GNOME), `Alt+Down` (KDE), `Alt+Down` (Emacs), `Alt+Down` (Sublime Text), `Alt+Down` (Sublime Text (macOS)), `Ctrl+Alt+Down` (NetBeans), `Alt+Down` (Visual Studio), `⌃ ⇧ ↓` (Visual Studio (macOS)), `Ctrl+Shift+Down` (Eclipse), `⌃ ⌥ ↓` (Eclipse (macOS))     | Click these icons to move the selected task one line up or down in the list. The tasks are performed in the order that they appear in the list.  |
| Show this page |  | Select this checkbox to show the run/debug configuration settings prior to actually starting the run/debug configuration.  |
| Activate tool window |  |      By default this checkbox is selected and the [Run](run-tool-window.html) or the [Debug](debug-tool-window.html) tool window opens when you start the run/debug configuration.       Otherwise, if the checkbox is cleared, the tool window is hidden. However, when the configuration is running, you can open the corresponding tool window for it yourself by pressing `Alt+4` (Windows), `⌘ 4` (macOS), `⌘ 4` (IntelliJ IDEA Classic (macOS)), `⌘ 4` (macOS System Shortcuts), `Alt+4` (XWin), `Alt+4` (GNOME), `Alt+4` (KDE), `Alt+4` (Emacs), `Alt+4` (Sublime Text), `⌘ 4` (Sublime Text (macOS)), `Alt+4` (NetBeans), `Alt+4` (Visual Studio), `⌘ 4` (Visual Studio (macOS)), `Alt+4` (Eclipse), `⌘ 4` (Eclipse (macOS)) or `Alt+5` (Windows), `⌘ 5` (macOS), `⌘ 5` (IntelliJ IDEA Classic (macOS)), `⌘ 5` (macOS System Shortcuts), `Alt+5` (XWin), `Alt+5` (GNOME), `Alt+5` (KDE), `Alt+5` (Emacs), `Alt+5` (Sublime Text), `⌘ 5` (Sublime Text (macOS)), `Alt+5` (NetBeans), `Alt+5` (Visual Studio), `⌘ 5` (Visual Studio (macOS)), `Alt+5` (Eclipse), `⌘ 5` (Eclipse (macOS)).      |
| Focus tool window |  |     Select this checkbox to automatically move focus to the [Run](run-tool-window.html) or the [Debug](debug-tool-window.html) tool window when you start the run/debug configuration.     |

## Logs

The following options are related to logging the execution of this configuration. For more information, refer to [Logs](setting-log-options.html).

| Item | Description |
| --- | --- |
| Specify logs to be shown in the console   |    Specify which log files to display while running the application.                               Click ![the Add button](https://resources.jetbrains.com/help/img/idea/2026.2/app.expui.general.add.svg) to add a new log. In the Edit Log Files Aliases dialog, configure the following:                                 * Alias: The name of the tab where the log will be displayed.    * Log File Location: Specify the path to the log file or an [Ant pattern](https://ant.apache.org/manual/dirtasks.html). If several files of a rolling log match the pattern, IntelliJ IDEA will display the most recent one.    * Show all files coverable by pattern: Show all logs that match the pattern.                              For logs in the table, you can configure the following options:                                * Is Active: Display the specified log file.    * Skip Content: Do not display old log messages from previous runs.    |
| Save console output to file   | Save the console output to the specified location. Type the path manually or click the browse button and point to the desired location in the [dialog that opens](null). |
| Show console when a message is printed to stdout   | Activate the console when the application writes to the standard output stream. |
| Show console when a message is printed to stderr   | Activate the console when the application writes to the standard error stream. |

