WebStorm 2025.2 Help

共享索引

减少索引时间的一种可能方式是使用共享索引。 与本地构建的常规索引不同,共享索引只需生成一次,之后在需要时可在其他计算机上重复使用。

WebStorm 可以为您的项目代码构建并使用共享索引。 每当 WebStorm 需要重新索引应用程序时,它将使用可用的共享索引,并为项目的其余部分构建本地索引。 通常,这比从头开始为整个应用程序构建本地索引要快。

确保插件已安装

要使用共享项目索引,必须在设置中启用 Shared Project Indexes 捆绑插件:

  1. Ctrl+Alt+S 打开设置,然后选择 插件

  2. 切换到 已安装 选项卡,输入 Shared Project Indexes ,并确保旁边的复选框已选中。

    否则,请选中该复选框以启用插件。

  3. 应用更改并关闭对话框。 如有提示,请重启 IDE。

共享项目索引

共享项目索引用于项目源代码及其依赖项的构建。 通过在一台计算机上生成索引并将其分发到其他计算机,可以避免在每台机器上重复索引流程。 这样,每台计算机都可使用预生成的索引,而无需单独执行耗时的索引操作。 这是共享索引相较于常规索引的主要优点。

对于大型项目,使用共享索引较为合理,因为索引可能耗时较长,从而给相关团队带来不便。 对于较小的项目,建议使用 减少索引时间的其他方法

开始之前

用于构建项目共享索引的计算机及所有使用项目共享索引的计算机:

  • 应使用相同版本的 IDE,以确保索引兼容性。

  • 可使用不同的操作系统。

在将共享项目索引集成到基础架构之前,您可以通过运行命令行工具 评估 索引可节省的时间。

如果评估结果令人满意,您可以继续使用共享索引。 在更复杂的场景中,您可以自定义 IntelliJ Shared Indexes Tool Example 存储库中的示例脚本。 例如,在生成共享索引时,可以使用 JSON 配置文件来禁用 xz 压缩或使用 gzip 压缩。

通过共享索引评估索引时间

在将共享项目索引用于工作流程之前,您可以查看它们能为您节省多少时间。 在评估过程中,工具将在您指定的目录中生成一些文件。

  1. 下载最新版本的 命令行工具 并解压缩归档文件。

  2. 在命令行中,导航至命令行工具所在目录并运行以下命令以执行二进制文件:

    .\bin\ij-shared-indexes-tool-cli.bat boost
    ./bin/ij-shared-indexes-tool-cli boost
    ./bin/ij-shared-indexes-tool-cli boost

    使用以下选项:

    • --ij :(必填)本地安装的 IDE 的路径。

    • --project :(必填)要为其构建共享索引的项目路径。

    • --port :用于运行本地服务器的端口。 默认端口为 25561。

    • --data-directory :用于存储生成索引和服务器数据的目录。 默认目录为 ./ij-shared-indexes-tool-data

  3. 请等待一段时间。 之后,您将看到使用共享索引与未使用共享索引时的索引时间。

通过查看时间差,您可以决定是否在工作流程中使用共享项目索引。

生成项目索引

请按照以下步骤生成索引文件。 索引生成完成后,您需要将 文件上传至文件服务器或兼容 S3 的存储

  1. 下载最新版本的 命令行工具 并解压缩归档文件。

  2. 在命令行中,导航至命令行工具所在目录,并通过运行以下命令执行二进制文件:

    .\bin\ij-shared-indexes-tool-cli.bat indexes
    ./bin/ij-shared-indexes-tool-cli indexes
    ./bin/ij-shared-indexes-tool-cli indexes

    使用以下选项:

    • --ij :(必填) 本地安装的 IDE 路径。

    • --project :(必填)要为其构建共享索引的项目路径。

    • --base-url :(必填)索引服务器 URL。 基础 URL 将用于定义托管共享索引的完整 URL。

    • --data-directory :用于存储生成的索引与服务器数据的目录。 默认目录为 ./ij-shared-indexes-tool-data 。 您应将此目录中的文件上传到 base-url 参数指定的服务器。

  3. 项目索引生成后,您将看到一条消息,包含 在项目中配置共享索引所需的信息。

生成索引后,执行 indexes 命令时, 您指定的目录中将出现两个文件夹: 服务器 临时文件夹 。 索引文件存储在 服务器 目录中。

将文件上传到存储中

生成索引后,执行 indexes 命令时, 您指定的目录中将出现两个文件夹: 服务器 临时文件夹 。 索引文件存储在 服务器 目录中。

将共享索引上传到远程存储

  • 数据 项目 两个文件夹从 服务器 目录上传至您的文件服务器或兼容 S3 的存储中。 存储位置应与使用 base-url 参数生成索引时定义的基本 URL 相同。

本地测试时发布共享索引

测试共享索引时,您可以使用 server 命令在生成的文件上启动服务器。

  • 在命令行中导航至命令行工具所在目录,并通过运行以下命令执行可执行文件:

    .\bin\ij-shared-indexes-tool-cli.bat server
    ./bin/ij-shared-indexes-tool-cli server
    ./bin/ij-shared-indexes-tool-cli server

    使用以下选项:

    • --port :用于运行本地服务器的端口。

    • --server-directory :服务器数据目录。 默认目录为 ./ij-shared-indexes-tool-data/服务器

    例如:

    .\bin\ij-shared-indexes-tool-cli.bat server --port 8080 --server-directory "C:\Users\jetbrains\ij-shared-indexes-tool-data\server"
    ./bin/ij-shared-indexes-tool-cli server --port 8080 --server-directory "/Users/jetbrains/ij-shared-indexes-tool-data/server"
    ./bin/ij-shared-indexes-tool-cli server --port 8080 --server-directory "/home/jetbrains/ij-shared-indexes-tool-data/server"

配置对共享索引的访问

项目索引 上传到文件存储后,可以在另一台计算机上下载并应用。

  • 在项目目录中创建一个新文件 intellij.yaml ,并将终端中的信息复制到该文件中,例如:

    如果项目尚未建立索引或您已 清除系统缓存 ,则 IDE 会下载共享索引并使用。

    在默认配置中,IDE 会自动下载共享索引。 您可以选择更改此设置并 手动确认每次下载

项目索引将下载到 IDE 系统目录中的 index/shared_indexes

索引下载过程中,状态栏中会显示下载进度。

准备就绪后,您将在 通知 工具窗口中看到相应通知。

更改索引的下载方式

在默认配置中,IDE 会自动下载共享索引。 您可以手动确认每一个下载。

  1. intellij.yaml 文件中删除 consents 部分并重启项目。

  2. 设置 对话框(Ctrl+Alt+S )中,选择 工具 | 共享索引 ,并在 项目共享索引 区域中选择 下载前询问

    配置共享索引下载选项
  3. 应用更改并关闭对话框。

共享索引 CLI 命令参考

提升

用于评估使用项目共享索引后的索引速度提升。 选项:

  • --project :(必填)项目路径。

  • --ij :(必填) 已本地安装 IDE 的路径。

  • --port :用于本地服务器的端口。 默认端口为 25561。

  • --data-directory :用于生成和服务器数据的目录。

索引

生成项目共享索引并准备上传。选项: 选项:

  • --project :(必填)项目路径。

  • --ij :(必填) 已本地安装 IDE 的路径。

  • --base-url :(必填)索引服务器 URL。

  • --data-directory :用于生成和服务器数据的目录。

服务器

在本地索引上启动服务器。选项: 选项:

  • --port :用于本地服务器的端口。 默认端口为 25561。

  • --server-directory :服务器数据目录。 默认目录为 ./ij-shared-indexes-tool-data/服务器

版本

显示共享索引版本信息。选项: 选项:

您可以继续在命令行中使用共享索引。 在更复杂的场景中,您可以自定义 IntelliJ Shared Indexes Tool Example 存储库中的示例脚本。

最后修改日期: 2025年 9月 26日