
# Java启动配置使用简介
启动配置允许用户配置和保存各种场景的运行或调试设置详细信息。CodeArts IDE支持用户可视化的新增/修改启动配置，并将配置信息保存在项目根路径下".arts"文件夹中的"launch.json"文件内。
#### 可视化的新增/修改启动配置
1. 在CodeArts IDE右上角工具栏上的配置列表中，选择**"编辑配置..."** ，如下图所示。
   
   ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002383951449.png)
   
   
2. 在打开的**"运行/调试配置"** 中，单击左侧工具栏的**"新增配置项"** （+）按钮，选择并添加对应类型的配置项。
   
   图1可添加的Java启动配置示例   
   ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002383847973.png)
   
   
3. 在新增Java配置项（如Java Class）的编辑界面中，右侧的**"配置选项"** 按钮可以选择更多的参数进行配置。
   
   ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002383980749.png "点击放大")
   
   
4. 单击**"运行/调试配置"** 窗口底部的**"应用"** 按钮可以保存当前的配置，并且可以在**"运行/调试配置"** 窗口中继续添加新的配置**。** 单击**"确定"** 按钮会保存当前的配置，并关闭**"运行/调试配置"** 窗口，单击**"取消"** 按钮会取消本次的编辑并关闭**"运行/调试配置"**窗口。
 
#### 向现有的launch.json添加新的配置
由于可视化新增/编辑的启动配置和"launch.json"文件中的配置是一一对应的，用户也可以直接操作launch.json文件，如在launch.json文件中添加新的配置。
要打开"launch.json"文件，请在CodeArts IDE右上角工具栏上的列表中选择**"打开launch.json"**，如下图所示。
图2打开launch.json文件   
![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002385374449.png)
请按如下步骤向现有的launch.json文件中添加新的配置：
1. 在打开的"launch.json"文件的编辑器中，单击编辑器右下角的 **"添加配置..."** 按钮，或将光标放置在"configurations"数组内，并使用代码推荐快捷键快速唤出可添加的配置列表（"Ctrl+I" / "Ctrl+Space" / "Ctrl+Shift+Space"（IDEA键盘映射））。
   
   图3可添加的配置列表示例   
   ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002384232077.png "点击放大")
   
   
2. 在弹出的配置列表中，选择要使用的启动配置模板。 
   在"launch.json"中，使用代码推荐快捷键（"Ctrl+I" / "Ctrl+Space" / "Ctrl+Shift+Space"（IDEA键盘映射））查看可用属性及其值的列表。
   
   
3. 配置完成后，右上角工具栏上的列表中可以选中新增的启动配置，然后单击**"开始执行(不调试)"** 按钮（![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002351534338.png)）或者**"开始调试"** 按钮（![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002351694158.png)）使用新增的启动配置发起运行或调试。
 
#### 变量动态替换
CodeArts IDE将常用路径和其他值作为变量提供，并支持对"launch.json"中的字符串中进行变量动态替换，因此您不必在启动配置中使用绝对路径。
支持以下预定义变量：
- **${cwd}**- CodeArts IDE启动时任务运行器的当前工作目录。
- **${defaultBuildTask}** - 默认构建任务的名称。
- **${extensionInstallFolder}**- 指定扩展安装的路径。
- **${fileBasenameNoExtension}** - 当前打开文件的无扩展名的基本名称。
- **${fileBasename}** - 当前打开文件的基本名称。
- **${fileDirname}** - 当前打开文件的目录名。
- **${fileExtname}** - 当前打开文件的扩展名。
- **${file}** - 当前打开的文件。
- **${lineNumber}** - 活动文件中当前选定的行号。
- **${pathSeparator}** - 操作系统用于分隔文件路径组件的字符。
- **${relativeFileDirname}** - 相对于**workspaceFolder**的当前打开文件的目录名。
- **${relativeFile}** - 相对于**workspaceFolder**的当前打开文件。
- **${selectedText}**- 活动文件中当前选定的文本。
- **${workspaceFolderBasename}** - 在CodeArts IDE中打开的文件夹的名称，不包含任何斜杠（/）。
- **${workspaceFolder}** - 在CodeArts IDE中打开的文件夹的路径。
 
