当前位置: 首页 > news >正文

[Java] 使用 VSCode 来开发 Java

目录

  • 前言
  • Java 环境
    • 怎么看自己是否已经配置完成?
    • 安装 JDK
    • 安装 Maven 环境
      • 修改 Maven 依赖源
  • 完善 VS Code
    • 配置插件
    • 配置 Maven
    • 配置 Maven Settings
    • 配置 Maven 可执行文件地址

前言

由于使用 VSCode 编码已经成为习惯,并且它确实相对其他的 IDE 较为轻量化。所以这里也使用 VSCode 来开发 Java,尽量让这个非 IDE 能够达到 Idea 的程度。

Java 环境

如果你已经配置好了 Java 环境,那么你可以跳过这一步

怎么看自己是否已经配置完成?

  • 使用 java --verison 看是否能够显示当前激活的 java 版本
  • 使用 mvn --verison 看是否能够显示当前激活的 maven 版本,此处如果是 powershell 的话,可能会有差异,需要通过 $env:Path = "$env:Path;C:\path\to\maven\bin" 更新环境变量后再试

安装 JDK

这里仅提供 redHat 的 OpenJdk 下载地址,其他分发版本请自行搜索

下载地址:redHat Open jdk 下载
建议下载 MSI 安装包,方便傻瓜式安装。如果下载 ZIP,则需要自行配置环境变量(JAVA_HOME, Path)等

下载好后,直接安装(默认安装就可以,如果你确实叛逆,也可以指定你想要的位置)

安装好后,通过 java --version 确认是否安装成功。

安装 Maven 环境

这里要澄清一下,并不是安装完JDK 之后,Maven 也就安装好了!
所以我们需要另行安装 Maven。

下载地址:Apache Maven

下载好后,找一个你看的顺眼的位置解压出来。并且记住这个文件夹中的根文件夹路径(也就是 bin 文件夹所在的目录的路径)

打开系统环境变量,

  • 新增 MAVEN_HOME: path to your just remember/
  • 修改 Path,尾部增加%MAVEN_HOME%\bin,注意如果是环境变量是一行,则需要在尾部增加;,前面如果没有也需要增加,如果是 powershell 则可能需要使用 $env:Path = "$env:Path;path to your just remember\bin" 来更新环境变量,想要永久生效请参考

做完之后,应用,然后通过 mvn -v 验证安装是否成功

修改 Maven 依赖源

由于众所周知的原因,我们直接从 Maven 官方源下载很慢,但是有的人也许很快,所以这是一个可选步骤,用来把下载源切换到国内代理以提高依赖下载的速度。

修改maven 目录下的 conf/settings.xml 中的 mirrors 节点,下面列出了阿里源,163 源,华为源,腾讯源,可以根据自己需求配置

     <mirror><id>aliyunmaven</id><mirrorOf>*</mirrorOf><name>阿里云公共仓库</name><url>https://maven.aliyun.com/repository/public</url></mirror><mirror><id>nexus-163</id><mirrorOf>*</mirrorOf><name>Nexus 163</name><url>http://mirrors.163.com/maven/repository/maven-public/</url></mirror><mirror><id>huaweicloud</id><mirrorOf>*</mirrorOf><url>https://repo.huaweicloud.com/repository/maven/</url></mirror><mirror><id>nexus-tencentyun</id><mirrorOf>*</mirrorOf><name>Nexus tencentyun</name><url>http://mirrors.cloud.tencent.com/nexus/repository/maven-public/</url></mirror>

完善 VS Code

配置插件

毕竟,VS Code 只是一个文本编辑器,我们需要借助插件来丰富它的功能
我们可以安装如下插件来完善这个编辑器,只是建议安装,你也可以直接闷头干

  • Debugger for Java
  • Extension Pack for Java
  • Gradle for Java
  • Java
  • Language Support for Java™ by Red Hat
  • Maven for Java
  • Project Manager for Java
  • Spring Boot Tools
  • Spring Initializr Java Support
  • Test Runner for Java

如下图(请手动忽略 ESLint)
在这里插入图片描述

配置 Maven

我们可以给 VS Code 也配置一下 Maven,

配置 Maven Settings

VS Code 中 ctrl + ,,输入 java.configuration.maven,下面是我机器上的例子,需要配置下面的 settings.xml 为你 maven 的 settings.xml 文件路径
在这里插入图片描述

配置 Maven 可执行文件地址

VSCode 中 ctrl + ,,输入 maven.executable.path, 下面是我机器上的例子,需要把下面的路径替换为你 Maven 可执行文件的路径
在这里插入图片描述
这样你就可以在左边文件试图下方看到 一个 MAVEN tab,之后就开造吧

相关文章:

[Java] 使用 VSCode 来开发 Java

目录 前言Java 环境怎么看自己是否已经配置完成&#xff1f;安装 JDK安装 Maven 环境修改 Maven 依赖源 完善 VS Code配置插件配置 Maven配置 Maven Settings配置 Maven 可执行文件地址 前言 由于使用 VSCode 编码已经成为习惯&#xff0c;并且它确实相对其他的 IDE 较为轻量化…...

奇怪的知识又增加了,ESP32下的Lisp编程:ULisp--Lisp for microcontrollers

ESP32下有MicroPython&#xff0c;那么我就在想&#xff0c;有Lisp语言支持吗&#xff1f;答案是果然有&#xff01;有ULisp&#xff0c;专门为MCU设计的Lisp&#xff01; 网址&#xff1a;uLisp - Lisp for microcontrollers 介绍&#xff1a;用于微控制器的 Lisp 适用于 Ar…...

STM32标准库学习之寄存器方法点亮LED灯

STM32C8T6最小系统开发板&#xff0c;点亮PC13引脚的LED灯 1.使能PC13引脚的定时器 PC13引脚为GPIOC组的第13个端口&#xff0c;GPIO的时钟使能定时器为RCC_APB2ENR&#xff0c;这是可以从手册中得出的&#xff0c;如下图所示 从下图可以得出&#xff0c;若要使能GPIOC端口&a…...

Jenkins:持续集成与持续部署的利器

&#x1f407;明明跟你说过&#xff1a;个人主页 &#x1f3c5;个人专栏&#xff1a;《未来已来&#xff1a;云原生之旅》&#x1f3c5; &#x1f516;行路有良友&#xff0c;便是天堂&#x1f516; 目录 一、引言 1、什么是Jenkins 2、Jenkins的起源 二、Jenkins的核心…...

概率论得学习和整理30: 用EXCEL 描述泊松分布 poisson distribution

目录 1 泊松分布的基本内容 1.1 泊松分布的关键点 1.1.1 属于离散分布 1.1.2 泊松分布的特点&#xff1a;每个子区间内概率相等 &#xff0c; λ就是平均概率 1.2 核心参数 1.3 pmf公式 1.4 期望和方差 2 例1&#xff1a;用EXCEL计算泊松分布的概率 3 比较λ不同值时…...

汽车SoC芯片及其安全岛设计与未来发展趋势(学习笔记)

SoC系列已发布多篇文章&#xff0c;之前应该发布到4.3章节&#xff0c;后续还有包含常见汽车SoC&#xff0c;SoC评价指标&#xff0c;产业链及发展趋势等&#xff0c;均见已发布完整版本付费资源&#xff0c;链接如下&#xff1a; 汽车SoC芯片及其安全岛设计与未来发展趋势&am…...

【排序算法】——选择排序

前言 排序(Sorting) 是计算机程序设计中的一种重要操作&#xff0c;它的功能是将一个数据元素&#xff08;或记录&#xff09;的任意序列&#xff0c;重新排列成一个关键字有序的序列。所谓排序&#xff0c;就是使一串记录&#xff0c;按照其中的某个或某些关键字的大小&#x…...

第十五章 Linux Shell 编程

15.1 Shell 变量 了解&#xff1a;Shell的功能 了解&#xff1a;Shell的种类 了解&#xff1a;Shell的调用 了解&#xff1a;Shell变量的概念 了解&#xff1a;Shell变量的定义 了解&#xff1a;Shell数组变量 了解&#xff1a;Shell内置变量 了解&#xff1a;双引号 和…...

【c++笔试强训】(第三十八篇)

目录 不相邻取数&#xff08;动态规划-线性dp&#xff09; 题目解析 讲解算法原理 编写代码 空调遥控&#xff08;⼆分/滑动窗⼝&#xff09; 题目解析 讲解算法原理 编写代码 不相邻取数&#xff08;动态规划-线性dp&#xff09; 题目解析 1.题目链接&#xff1a;不相…...

go 自己写序列化函数不转义

以map[int32]string转化为[]byte为例 背景&#xff1a;算法传给我一个map[int32]string类型的值&#xff08;map的值本身是json转化成的string&#xff09;&#xff0c;我需要把这个值生成一个文件上传到OSS&#xff0c;但是发现通过url下载下来的文件里面有转义字符。 原因&a…...

一般行业安全管理人员考试题库分享

1.在高速运转的机械飞轮外部安装防护罩&#xff0c;属于(B)安全技术措施。 A.限制能量 B.隔离 C.故障设计 D.设置薄弱环节 2.生产经营单位的(B)是本单位安全生产的第一责任人&#xff0c;对落实本单位安全生产主体责任全面负责&#xff0c;具体履行安全生产管理职责。 A.全员 B…...

Marketo REST API 批量修改邮件内容

以下是更加细化的 使用 Marketo REST API 批量修改邮件内容 的步骤&#xff0c;详细解释每个阶段的操作&#xff0c;包括 API 的请求、数据处理及潜在问题解决。 前期准备工作 确保 Marketo API 访问权限 你需要 Marketo REST API 用户 和 API Role&#xff0c;有权限访问邮件资…...

《云原生安全攻防》-- K8s安全框架:认证、鉴权与准入控制

从本节课程开始&#xff0c;我们将来介绍K8s安全框架&#xff0c;这是保障K8s集群安全比较关键的安全机制。接下来&#xff0c;让我们一起来探索K8s安全框架的运行机制。 在这个课程中&#xff0c;我们将学习以下内容&#xff1a; K8s安全框架&#xff1a;由认证、鉴权和准入控…...

淘宝获取sku详细信息 API

淘宝获取 SKU 详细信息的 API 主要是 taobao.item_sku 接口&#xff0c;以下是详细介绍&#xff1a; 公共参数 key&#xff1a;调用 key&#xff0c;是调用接口的身份验证信息&#xff0c;必须以 GET 方式拼接在 URL 中1.secret&#xff1a;调用密钥&#xff0c;与 key 配合使…...

基于Spring Boot的体育商品推荐系统

一、系统背景与目的 随着电子商务的快速发展和人们健康意识的提高&#xff0c;体育商品市场呈现出蓬勃发展的态势。然而&#xff0c;传统的体育商品销售方式存在商品种类繁多、用户选择困难、个性化需求无法满足等问题。为了解决这些问题&#xff0c;基于Spring Boot的体育商品…...

C++小细节笔记

1、C字符串转数字 – 数字转字符串 //string > int 使用 stoi stol//int > string 使用 to_string()2、C遍历 int evalRPN(vector<string>& tokens) {stack<int> intStack;for(string &str:tokens){}bool isValid(string s) {stack<char> …...

go语言并发读写数据队列,不停写的同时,一次最多读取指定量数据(逐行注释)

1、数据队列可以存储任意类型的一个数据&#xff08;下程序是添加整数值&#xff09;。 数据队列代码点这里查看《go语言结构体实现数据结构队列&#xff08;先进先出&#xff09;存储数据&#xff08;逐行注释&#xff09;》 2、读写操作并发进行&#xff08;下程序向队列中…...

密码学——密码学概述、分类、加密技术(山东省大数据职称考试)

大数据分析应用-初级 第一部分 基础知识 一、大数据法律法规、政策文件、相关标准 二、计算机基础知识 三、信息化基础知识 四、密码学 五、大数据安全 六、数据库系统 七、数据仓库. 第二部分 专业知识 一、大数据技术与应用 二、大数据分析模型 三、数据科学 密码学 大数据…...

【数据库MySQL篇二】MySQL数据库入门基础教程:一网打尽数据库和表各种操作、命令和语法

一、MySQL创建数据库 使用Create命令创建数据库 我们可以在登陆 MySQL 服务后&#xff0c;使用 create 命令创建数据库&#xff0c;语法如下: CREATE DATABASE 数据库名; 以下命令简单的演示了创建数据库的过程&#xff0c;数据名为 RUNOOB: [roothost]# mysql -u root -p…...

Android 解决“Could not resolve all artifacts for configuration ‘:classpath‘方法

前些天发现了一个蛮有意思的人工智能学习网站,8个字形容一下"通俗易懂&#xff0c;风趣幽默"&#xff0c;感觉非常有意思,忍不住分享一下给大家。 &#x1f449;点击跳转到教程 报错背景&#xff0c;公司的项目&#xff0c;长时间没有打开&#xff0c;时隔半年再次打…...

青少年编程与数学 02-004 Go语言Web编程 08课题、使用Gin框架

青少年编程与数学 02-004 Go语言Web编程 08课题、使用Gin框架 一、Gin框架二、接收和处理请求三、应用示例 课题摘要:本文介绍了Gin框架的特点、如何接收和处理请求以及一个应用示例。Gin是一个高性能、轻量级的Go语言Web框架&#xff0c;以其快速、极简设计、强大的路由和中间…...

PostgreSQL: 事务年龄

排查 在 PostgreSQL 数据库中&#xff0c;事务年龄&#xff08;也称为事务 ID 年龄&#xff09;是一个重要的监控指标&#xff0c;因为 PostgreSQL 使用事务 ID&#xff08;XID&#xff09;来保持事务的隔离性。每个事务都会被分配一个唯一的事务 ID&#xff0c;这个 ID 随着每…...

C# 识别二维码

文章目录 一. 二维码识别技术概述二 维码识别的步骤图像预处理二维码的定位和检测二维码解码 三 常用的二维码识别库1. OpenCV2. ZXing.Net 一. 二维码识别技术概述 二维码是一种通过黑白矩阵排列来编码数据的图形符号&#xff0c;它的编码方式具有较强的容错性&#xff0c;可以…...

KeepAlive与RouterView缓存

参考 vue动态组件&#xff1c;Component&#xff1e;与&#xff1c;KeepAlive&#xff1e; KeepAlive官网介绍 缓存之keep-alive的理解和应用 Vue3Vite KeepAlive页面缓存问题 vue多级菜单(路由)导致缓存(keep-alive)失效 vue3 router-view keeperalive对于同一路径但路径…...

RK3588 , mpp硬编码rgb, 保存MP4视频文件.

RK3588 , mpp硬编码yuv, 保存MP4视频文件. ⚡️ 传送 ➡️ RK3588, FFmpeg 拉流 RTSP, mpp 硬解码转RGBRk3588 FFmpeg 拉流 RTSP, 硬解码转RGBUbuntu x64 架构, 交叉编译aarch64 FFmpeg mppCode Init MppMPP_RET init_mpp...

使用 Wireshark 和 Lua 脚本解析通讯报文

在复杂的网络环境中&#xff0c;Wireshark 凭借其强大的捕获和显示功能&#xff0c;成为协议分析不可或缺的工具。然而&#xff0c;面对众多未被内置支持的协议或需要扩展解析的场景&#xff0c;Lua 脚本的引入为Wireshark 提供了极大的灵活性和可扩展性。本文将详细介绍如何使…...

ElasticSearch08-分析器详解

零、文章目录 ElasticSearch08-分析器详解 1、分析器原理 Elasticsearch的分词器&#xff08;Analyzer&#xff09;是全文搜索的核心组件&#xff0c;它负责将文本转换为一系列单词&#xff08;term/token&#xff09;的过程&#xff0c;也叫分词。 &#xff08;1&#xff…...

【IN、NOT、AND、OR】在 MySql 中的使用方法,使用场景、注意事项

目录 IN NOT AND OR 注意事项&#xff1a; 使用场景&#xff1a; IN 用于指定某个字段的值在一个预定义的列表中。 SELECT * FROM users WHERE age IN (20, 25, 30);查询返回 age 字段 是20、25 、30 的用户记录。 NOT 用于对条件进行否定。 查询将返回与指定 条件相…...

Face to face

1.西班牙添加5G volte 首先carrierconfig里使能 <boolean name"carrier_nr_available_bool" value"true" /> <boolean name"carrier_volte_available_bool" value"true" /> 其次 组件apn配置ims参数 2.印度j…...

宝塔配置python项目提示python版本与安装的不符

用宝塔的网站添加了项目&#xff0c;配置选择了python3.8&#xff0c;但是在终端并且进入了虚拟环境查看python的版本居然还是默认是2.7.5版本。 官方是举列说明&#xff0c;这张图是用python管理器生成的 而我用的 网站--python项目&#xff0c; 那么虚拟路径在 /www/serve…...