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
:: 暂停窗口,方便查看结果(按任意键关闭)
相关推荐
BS_Li2 小时前
【Linux系统编程】进程控制
java·linux·数据库
多多*2 小时前
分布式中间件 消息队列Rocketmq 详解
java·开发语言·jvm·数据库·mysql·maven·java-rocketmq
從南走到北2 小时前
JAVA外卖霸王餐CPS优惠CPS平台自主发布小程序+公众号霸王餐源码
java·开发语言·小程序
麦兜*2 小时前
Redis在Web3中的应用探索:作为链下状态缓存与索引层
java·spring boot·redis·spring cloud·缓存·docker·web3
迦蓝叶2 小时前
从繁琐到优雅:用 Project Panama 改变 Java 原生交互
java·jni·native·java新特性·原生接口·跨语言开发·projectpanama
Yue丶越2 小时前
【C语言】深入理解指针(四)
java·c语言·算法
豐儀麟阁贵3 小时前
6.3对象类型的转换
java·开发语言
四谎真好看3 小时前
Java 黑马程序员学习笔记(进阶篇27)
java·开发语言·笔记·学习·学习笔记
q***82913 小时前
Spring Boot 热部署
java·spring boot·后端