VSCode中如何搭建JAVA+MAVEN开发环境?

一、前置条件(必须先安装)

在配置 VSCode 的 Maven 环境前,需要先安装好以下工具:

  1. JDK(推荐 JDK 8/11/17,Maven 对新版本 JDK 兼容性较好)
  2. Maven(官网下载 /apache-maven-3.6 + 版本)
  3. 配置环境变量:
  • 配置JAVA_HOME(指向 JDK 安装目录)
  • 配置MAVEN_HOME(指向 Maven 安装目录)
  • 把%MAVEN_HOME%\bin和%JAVA_HOME%\bin添加到系统Path中
  • 验证:打开终端执行 java -version 和 mvn -v,能正常输出版本信息即配置成功。

二、VSCode 配置步骤

1. 安装必备插件

打开 VSCode,在左侧扩展栏(Ctrl+Shift+X)搜索并安装以下插件:

  • Extension Pack for Java(微软官方 Java 扩展包,包含核心的 Java 开发工具)
  • Maven for Java(专门支持 Maven 项目的插件,提供 pom.xml 编辑、依赖管理、生命周期执行等功能)
  • Project Manager for Java(可选,方便管理多个 Java/Maven 项目)

2. 配置 VSCode 的 Java/Maven 路径(可选,自动识别失败时手动配置)

如果 VSCode 没有自动识别 JDK/Maven 路径,需要手动配置:

打开 VSCode 设置(Ctrl+,),搜索 java.configuration.runtimes,点击「编辑 in settings.json」。

添加 JDK 配置(示例为 JDK 11):

"java.configuration.runtimes": [ { "name": "JavaSE-11", "path": "你的JDK安装路径(如D:\\jdk-11.0.19)", "default": true } ]

搜索 maven.executable.path,设置 Maven 可执行文件路径(如D:\\apache-maven-3.9.6\\bin\\mvn.cmd)。

搜索 maven.settings.file,可选配置 Maven 的 settings.xml 路径(如D:\\apache-maven-3.9.6\\conf\\settings.xml,用于配置镜像、本地仓库等)。

3. 创建 / 打开 Maven 项目

方式 1:创建新的 Maven 项目

打开 VSCode 命令面板(Ctrl+Shift+P),输入 Maven: Create Maven Project,回车。

选择 Maven Archetype(推荐maven-archetype-quickstart,基础 Java 项目模板)。

选择 Archetype 版本(直接回车选最新即可)。

输入项目信息:

  • Group Id(如com.example,组织 / 包名前缀)
  • Artifact Id(如maven-demo,项目名)
  • Version(默认1.0-SNAPSHOT,回车即可)
  • Package(默认和 Group Id 一致,回车即可)

选择项目保存路径,等待 Maven 自动生成项目结构。

方式 2:打开已有的 Maven 项目

点击 VSCode 左侧「文件」→「打开文件夹」,选择 Maven 项目的根目录(包含 pom.xml 的目录)。

VSCode 会自动识别 Maven 项目,并加载依赖(首次加载可能需要几分钟,耐心等待)。

4. 验证环境是否正常

打开项目中的src/main/java/com/example/App.java(自动生成的测试类)。

右键点击文件,选择「Run Java」,终端会输出Hello World!,说明运行正常。

验证 Maven 命令:打开 VSCode 终端(Ctrl+),执行 mvn clean package,能成功打包生成target` 目录,说明 Maven 命令执行正常。

三、优化配置(可选,提升开发体验)

配置 Maven 镜像(加速依赖下载):

编辑 Maven 的settings.xml(路径:MAVEN_HOME/conf/settings.xml),添加阿里云镜像:

<mirrors> <mirror> <id>aliyunmaven</id> <mirrorOf>central</mirrorOf> <url>https://maven.aliyun.com/repository/public</url> </mirror> </mirrors>

设置本地仓库路径:

在settings.xml中添加:

<localRepository>你的本地仓库路径(如D:\\maven-repo)</localRepository>

总结

  1. 搭建核心:先安装并配置 JDK 和 Maven 的环境变量,再给 VSCode 装 Java 和 Maven 插件。
  2. 关键验证:通过「创建 Maven 项目 + 运行测试类 + 执行 mvn 命令」确认环境可用。
  3. 优化点:配置阿里云 Maven 镜像可大幅提升依赖下载速度,是必做的优化项。

整个过程完成后,你就可以在 VSCode 中正常开发、编译、打包 Java Maven 项目了。如果遇到依赖加载慢、插件识别失败等问题,优先检查环境变量和 VSCode 的 settings.json 配置是否正确。

Read more

C++ 继承:面向对象的代码复用核心机制

C++ 继承:面向对象的代码复用核心机制

C++ 继承:面向对象的代码复用核心机制 💡 学习目标:掌握继承的基本语法与核心特性,理解不同继承方式的访问权限控制,能够通过继承实现代码复用与扩展。 💡 学习重点:继承的语法格式、三种继承方式的区别、基类与派生类的关系、继承中的构造与析构顺序。 一、继承的概念与核心价值 ✅ 结论:继承是 C++ 面向对象三大特性之一,允许一个类派生类继承另一个类基类的属性和行为,实现代码复用,同时支持派生类在基类基础上扩展新功能。 继承的核心价值体现在两个方面: 1. 代码复用:避免重复编写相同的成员变量和成员函数,降低代码冗余度 2. 功能扩展:派生类可以在基类的基础上新增属性和方法,满足更复杂的业务需求 生活中的继承示例:学生和老师都属于“人”,都有姓名、年龄等属性和吃饭、睡觉等行为。可以先定义 Person 基类,再让 Student 和 Teacher 继承 Person,并各自扩展专属功能。 二、继承的基本语法与实现 2.1

By Ne0inhk
【C++:哈希表封装】用哈希表封装unordered_map和unordered_set

【C++:哈希表封装】用哈希表封装unordered_map和unordered_set

🔥艾莉丝努力练剑:个人主页 ❄专栏传送门:《C语言》、《数据结构与算法》、C/C++干货分享&学习过程记录、Linux操作系统编程详解、笔试/面试常见算法:从基础到进阶、测试开发要点全知道 ⭐️为天地立心,为生民立命,为往圣继绝学,为万世开太平 🎬艾莉丝的简介: 🎬艾莉丝的C++专栏简介: C++的两个参考文档  老朋友(非官方文档):cplusplus 官方文档(同步更新):C++ 官方参考文档 set和multiset的参考文档:set、multiset map和multimap的参考文档:map、multimap unordered_set和unordered_multiset的参考文档:unordered_set、unordered_multiset unordered_map和unordered_multimap的参考文档: unordered_map、unordered_

By Ne0inhk
【Linux】线程池(二)C++ 手写线程池全流程:从核心设计到线程安全、死锁深度解析

【Linux】线程池(二)C++ 手写线程池全流程:从核心设计到线程安全、死锁深度解析

文章目录 * 实现线程池 * ThreadPool类设计 * 构造函数 * Start接口 * 线程池接入日志 * 初步实现源码及效果图 * 总结代码执行逻辑 * 实现回调函数Routine * enqueue接口实现 * 线程池退出stop接口优化 * 线程池源码 * 线程安全和重入问题 * 结论 * 死锁 * 死锁四个必要条件 * 避免死锁 * STL、智能指针和线程安全 实现线程池 我们之前已经接触了进程池,其实线程池和进程池核心思路差不多,对于线程池来说,会有一个任务队列和若干线程,用户往任务队列里添加任务,若干线程在任务队列里拿任务并完成。 ThreadPool类设计 构造函数 对于线程来说,启动线程池分为两步: 1.先创建线程本身(Thread类对象)2.再启动线程(调用Thread的start接口) 所以在构造函数我们要先创建线程本身(thread t(回调函数,线程名)),创建线程需要传递回调函数(假设是hello)和线程名,但这里有一个问题,一般来说传递的

By Ne0inhk
基于飞算JavaAI的在线图书借阅平台设计与实现(深度实践版)

基于飞算JavaAI的在线图书借阅平台设计与实现(深度实践版)

摘要: 本文以从概念到落地,完整构建一个“在线图书借阅平台”的全过程。文章不仅覆盖了环境配置、需求分析、接口设计、数据库建模等基础流程,更着重于展示AI自动生成的项目核心代码,并在此基础上进行了详尽的功能扩展和代码优化。通过对用户管理、图书管理、借阅与归还等关键业务模块的详细代码实现与注释,本文旨在全面、深入地展现飞算JavaAI在真实项目开发中的强大能力,探讨其如何重塑传统Java开发范式,显著提升开发效率与代码质量。 一、引言 在软件工程领域,随着业务逻辑的日益复杂化和市场对产品迭代速度的严苛要求,传统的纯手动编码模式正面临前所未有的挑战。开发周期长、人力成本高、代码质量参差不齐、技术债累积等问题,成为制约项目成功的重要因素。正是在这样的背景下,人工智能辅助编程(AI-Assisted Programming)应运而生,它通过将大型语言模型与软件工程知识深度融合,旨在自动化处理开发流程中的重复性、模式化任务,使开发者能够聚焦于更具创造性的核心业务逻辑。 飞算科技推出的飞算JavaAI,正是这一变革浪潮中的杰出代表。它作为一款深度集成于IntelliJ IDEA的智能插件,能够

By Ne0inhk