Java 开发环境安装指南(一) | 目录设计规范

Java 开发环境安装指南(一) | 目录设计规范

系列文章

Java 开发环境安装指南(一) | 目录设计规范

Java 开发环境安装指南(二) | JDK 安装

Java 开发环境安装指南(三) | Maven 安装

Java 开发环境安装指南(四) | NVM 安装

Java 开发环境安装指南(五) | Git 安装

Java 开发环境安装指南(六) | MySQL 安装

Java 开发环境安装指南(七) | Redis 安装

开发目录设计规范

基于"分层清晰、权责分明"原则,结合开发实操场景,将所有开发相关文件集中存放于D盘根目录的Develop文件夹,按"程序依赖"与"人工管理"维度划分为两大区域,具体结构如下:

bash 复制代码
D:\Develop
# 一、程序依赖区(全英文,被环境/工具/项目依赖)
├─ Company           # 公司项目代码(Git克隆、IDE开发目录)
├─ Personal          # 个人项目代码(学习、练手项目)
├─ Env               # 开发环境(中间件、JDK、Node等)
│  ├─ Java           # Java环境(多LTS版本并存,适配不同项目)
│  ├─ Node           # Node.js环境(前端开发)
│  ├─ Maven          # Maven构建工具
│  ├─ MySQL          # MySQL数据库
│  ├─ Redis          # Redis缓存
│  ├─ Elasticsearch  # Elasticsearch搜索引擎
│  ├─ Kafka          # Kafka消息队列
│  ├─ RabbitMQ       # RabbitMQ消息队列
│  ├─ Zookeeper      # Zookeeper(Kafka依赖)
│  └─ Nginx          # Nginx反向代理/静态资源服务
├─ DevTools          # 软件工具(代码开发核心工具)
│  ├─ IDEA           # IntelliJ IDEA(Java开发)
│  ├─ VSCode         # Visual Studio Code(前端开发)
│  ├─ Git            # Git版本控制
│  └─ Docker         # Docker容器(可选,微服务部署)
├─ VisTools          # 可视化辅助工具
│  ├─ Navicat        # 数据库管理(MySQL/Redis等)
│  ├─ DBeaver        # 多数据库可视化(兼容ES、Hive等)
│  ├─ RedisDesktop   # Redis可视化管理
│  ├─ Postman        # API接口调试
│  ├─ Typora         # Markdown文档编辑
│  └─ Grafana        # 监控可视化(可选,对接ES/Redis)
└─ Repos             # 依赖仓库(避免占用C盘)
    ├─ MavenRepo     # Maven本地仓库
    ├─ NpmRepo       # Npm本地仓库
    └─ GitLocal      # Git仓库备份(重要项目定期备份)

# 二、纯人操作区(中文,仅手动管理,不被程序依赖)
├─ 公司文档          # 公司通用资料(培训、规范、保密协议)
├─ 个人文档          # 个人学习资料(笔记、面试题、教程)
├─ 项目文档          # 项目专属文档(API、设计图、需求)
│  ├─ Company_项目名  # 公司项目文档(与Company目录项目一一对应)
│  └─ Personal_项目名 # 个人项目文档(与Personal目录项目一一对应)
├─ 通用文档          # 跨场景资料(环境配置、工具手册、模板)
│  ├─ EnvConfig      # 环境安装步骤(如JDK、MySQL配置笔记)
│  ├─ ToolGuides     # 工具使用手册(如IDEA快捷键、Git命令)
│  └─ ConfigBackup   # 工具配置备份(IDEA/VSCode配置导出文件)
└─ 临时文件          # 临时存储(安装包、构建缓存,可定期清理)
    ├─ 安装包备份    # 所有工具/环境的安装包(避免重复下载)
    └─ 构建缓存      # Maven/Gradle编译缓存(清理后可重建)

目录设计说明

  • 分区隔离:按"程序依赖"与"人工管理"分离设计

    • 程序依赖区(全英文路径):所有被开发工具、环境、项目直接引用的文件(如JDK安装目录、项目代码),需严格避免中文/空格/特殊字符,防止程序解析错误。

    • 纯人操作区(中文路径):仅用于人工查阅/编辑的文档(如需求文档、学习笔记),支持中文命名以提升可读性。

  • 层级控制 :核心路径最多3级(如D:\Develop\Env\Java\jdk17.0.10),既保证结构清晰,又避免路径过长导致的引用问题。

  • 版本显性 :环境目录明确包含版本号(如jdk17.0.10mysql-8.0.39-winx64),便于多版本共存与切换管理。

  • 关联映射:项目代码(Company/Personal)与项目文档(项目文档目录)通过"项目名"一一对应,便于快速定位项目相关资源。

  • 扩展性:Env目录预留Elasticsearch、Kafka等中间件路径,DevTools/VisTools支持新增工具(如后续添加Figma设计工具可放VisTools)。

快速创建脚本

bash 复制代码
@echo off
:: 关闭命令回显,让界面更干净
echo 开始创建D盘开发目录结构...
echo ==========================

:: 批量创建目录(按你提供的结构层级)
md "D:\Develop\Company"
md "D:\Develop\Personal"
md "D:\Develop\Env\Java"
md "D:\Develop\Env\Node"
md "D:\Develop\Env\Maven"
md "D:\Develop\Env\MySQL"
md "D:\Develop\Env\Redis"
md "D:\Develop\Env\Elasticsearch"
md "D:\Develop\Env\Kafka"
md "D:\Develop\Env\RabbitMQ"
md "D:\Develop\Env\Zookeeper"
md "D:\Develop\Env\Nginx"
md "D:\Develop\DevTools\IDEA"
md "D:\Develop\DevTools\VSCode"
md "D:\Develop\DevTools\Git"
md "D:\Develop\DevTools\Docker"
md "D:\Develop\VisTools\Navicat"
md "D:\Develop\VisTools\DBeaver"
md "D:\Develop\VisTools\RedisDesktop"
md "D:\Develop\VisTools\Postman"
md "D:\Develop\VisTools\Typora"
md "D:\Develop\VisTools\Grafana"
md "D:\Develop\Repos\MavenRepo"
md "D:\Develop\Repos\NpmRepo"
md "D:\Develop\Repos\GitLocal"
md "D:\Develop\公司文档"
md "D:\Develop\个人文档"
md "D:\Develop\项目文档\Company_项目名"
md "D:\Develop\项目文档\Personal_项目名"
md "D:\Develop\通用文档\EnvConfig"
md "D:\Develop\通用文档\ToolGuides"
md "D:\Develop\通用文档\ConfigBackup"
md "D:\Develop\临时文件\安装包备份"
md "D:\Develop\临时文件\构建缓存"

:: 提示完成
echo ==========================
echo 所有目录创建完成!
pause
:: 暂停窗口,方便查看结果(按任意键关闭)
相关推荐
陈文锦丫1 小时前
MQ的学习
java·开发语言
乌暮1 小时前
JavaEE初阶---线程安全问题
java·java-ee
爱笑的眼睛111 小时前
GraphQL:从数据查询到应用架构的范式演进
java·人工智能·python·ai
Seven972 小时前
剑指offer-52、正则表达式匹配
java
代码or搬砖2 小时前
RBAC(权限认证)小例子
java·数据库·spring boot
青蛙大侠公主2 小时前
Thread及其相关类
java·开发语言
Coder_Boy_2 小时前
DDD从0到企业级:迭代式学习 (共17章)之 四
java·人工智能·驱动开发·学习
2301_768350232 小时前
MySQL为什么选择InnoDB作为存储引擎
java·数据库·mysql
派大鑫wink2 小时前
【Java 学习日记】开篇:以日记为舟,渡 Java 进阶之海
java·笔记·程序人生·学习方法