# jetbrains **Repository Path**: luolayo/jetbrains ## Basic Information - **Project Name**: jetbrains - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-08-02 - **Last Updated**: 2026-09-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # JetBrains 工具 一个跨平台的 JetBrains IDE 与开发环境管理工具,支持 Windows、macOS 和 Linux。 ## 功能特性 - **自动扫描已安装的 JetBrains 产品**:自动检测系统中已安装的 JetBrains IDE。 - **支持下载 JetBrains 产品安装包**:提供下载 JetBrains 产品安装包的功能。 - **清理第三方工具残留的配置**:清理第三方工具遗留的环境变量配置和 vmoption 配置。 - **开发环境多版本管理**:支持语言运行时(如 Node.js、Python、Go、Rust 等)、包管理器、构建工具和 MySQL 多版本实例的管理。 - **跨平台支持**:可在 Windows、macOS 和 Linux 上运行。 ## 技术栈 - **后端**:Go 1.25+、Wails 3 - **前端**:React、TypeScript、Tailwind CSS 3 - **跨平台兼容**:Chrome 80+、Safari 13+ ## 环境要求 - Go 1.25+ - Node.js 20.19+ - pnpm - Wails 3 CLI `v3.0.0-beta.5` ## 安装 Wails CLI ```bash go install github.com/wailsapp/wails/v3/cmd/wails3@v3.0.0-beta.5 ``` ## 本地开发 ### 1. 安装依赖并启动开发模式 ```bash cd frontend && pnpm install && cd .. wails3 task dev ``` 开发模式使用 Vite 地址 `http://127.0.0.1:9245`。React/样式修改由 Vite HMR 即时更新,Go 文件修改由 Wails 重新编译并重启桌面进程。 ## 构建 ### 1. 构建当前平台 ```bash wails3 task build ``` ### 2. 构建指定平台 ```bash wails3 task build GOOS=windows wails3 task build GOOS=darwin wails3 task build GOOS=linux ``` 构建产物位于 `bin/` 目录。 ### 3. 发布构建 一次构建 Windows AMD64/ARM64、macOS Universal 和 Linux x86_64/ARM64 发布包: ```bash wails3 task release:build TAG=v2.0.0 ``` 该命令会按架构准备 Wails 官方 `wails-cross` 镜像。 ### 4. 发布到 Gitee 校验后上传 Gitee Release 并更新应用升级清单: ```bash GITEE_TOKEN=... wails3 task release:publish TAG=v2.0.0 ``` 发布产物位于 `build/release//`,完整说明见 [docs/releases.md](docs/releases.md)。 ## 项目结构 ``` . ├── main.go # Wails 3 应用入口与服务注册 ├── app.go # 待迁移的 JetBrains 兼容服务 ├── internal/ │ └── features/ # Go 功能模块 │ ├── environments/ # 开发环境管理模块 │ │ ├── detector.go # 系统环境检测 │ │ ├── manager_installer.go # 版本管理器安装 │ │ ├── mysql_instance_*.go # MySQL 实例管理 │ │ ├── version_manager.go # 版本管理 │ │ └── ... ├── util/ # 工具库 │ ├── device.go # 设备信息获取 │ ├── product.go # 产品管理逻辑 │ ├── file.go # 文件操作 │ ├── work.go # 工作流程 │ └── process.go # 进程管理 ├── global/ # 全局配置 ├── frontend/ # 前端应用 │ ├── bindings/ # Wails 3 自动生成绑定 │ ├── src/ │ │ ├── app/ # 路由、Provider、应用壳层 │ │ ├── components/ # 通用组件 │ │ ├── features/ # React 功能模块 │ │ │ ├── activation/ # 激活相关 │ │ │ ├── downloads/ # 下载相关 │ │ │ ├── environments/ # 环境管理 │ │ │ └── products/ # 产品管理 │ │ └── styles/ # 样式 │ └── package.json ├── build/ # 构建配置和产物 ├── docs/v2/ # v2 架构与产品设计 └── Taskfile.yml # Wails 3 构建入口 ``` ## 注意事项 - **macOS 权限**:macOS 会在启动时检查完全磁盘访问权限;安装或更新 `/Applications` 中的应用时,系统可能另外要求开启「应用管理」。 - **TCC 授权**:macOS 的 TCC 授权与应用签名及 Bundle ID 绑定。正式分发时请使用稳定的 Bundle ID 和固定签名。 - **操作前请关闭 IDE**:操作前请确保 JetBrains IDE 已关闭。 - **Linux 编译**:Linux AMD64 发布包在 Docker 的 Debian AMD64 环境中编译为 AppImage、DEB 和 RPM。 ## 许可证 本项目采用 [CC BY-NC 4.0](LICENSE) 许可证,禁止商业使用。 > 本项目并不支持开箱即用,需自行下载 jar 包等资源。本仓库开源是为了学习和交流目的,请勿二次开发并且用于商业用途。