【Maven】VSCode Java+Maven 环境配置

news2024/10/3 8:24:55

0x00 前言

没写过 Java,得配个带 Maven 的编码环境,不太明白,试试看顺便记录一下

0x01 配置过程

安装 jdk1.8 后,找到安装位置:

(base) dian@CD-Ali doraemon % /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
    1.8.381.09 (x86_64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
    1.8.0_291 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home

/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home

/Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home

在 .zshrc 配置环境:

# java env
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home 
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export JAVA_HOME
export PATH
export CLASSPATH

下载 Maven:

在 Index of /dist/maven/maven-3 里找到所需的 Maven 下载使用,

由于 jdk 版本常年是 1.8.0,这里选择了 3.6.0 的较老对应版本下载:

  • download: apache-maven-3.6.0-bin.zip
  • file: 📎apache-maven-3.6.0-bin.zip

解压在自己好找的路径里,比如我放在了 home 目录下,

在公司工作的话,也需要顺便把手手相传的用户自定义设置文件,放在这个目录里:

(base) dian@CD-Ali apache-maven-3.6.0 % pwd
/Users/dian/apache-maven-3.6.0

0x02 VSCode 中 Maven for Java 配置

在 VSCode 的扩展商店里安装 Maven for Java,打开“扩展设置”

在扩展设置的 Path 里填入 maven 路径和 settings file 路径,将使用 JAVA_HOME 的勾打上:

上述在扩展设置中的三步,也等效于直接在 VSCode 的 settings.json 中加入这三行:

之后,在 git 项目下(此处为 gul/doraemon)找到 pom.xml,右键该文件调出菜单栏

菜单栏里会有一个 “显示 Effective POM”,点击后将开始自动下载构建,

经过长长的 Downloading / Downloaded 列表之后,最终出现 BUILD SUCCESS,即环境搭建完成。

Spawn {"command":"\"/Users/dian/apache-maven-3.6.0/bin/mvn\"","args":["-s","\"/Users/dian/apache-maven-3.6.0/settings.xml\"","-B","-Doutput=\"/Users/dian/Library/Application Support/Code/User/workspaceStorage/e938a1dccd1b83f57865abcc26501355/vscjava.vscode-maven/f8ceb7d138c4f5e7c5ab7995a1292267.epom\"","help:effective-pom","-f","\"/Users/dian/Github/doraemon/doraemon-solution/pom.xml\""]}
[INFO] Scanning for projects...
[WARNING] 
[WARNING] Some problems were encountered while building the effective model for com.xxx.gul:doraemon-solution:jar:1.0.2-SNAPSHOT
[WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-compiler-plugin is missing. @ com.xxx.gul:doraemon:1.0.2-SNAPSHOT, /Users/dian/Github/doraemon/pom.xml, line 340, column 21
[WARNING] The expression ${parent.version} is deprecated. Please use ${project.parent.version} instead.
[WARNING] 
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING] 
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING] 
[INFO] Downloading from tbmirror: http://repo.xxx-inc.com/mvn/repository/org/apache/maven/plugins/maven-compiler-plugin/3.1/maven-compiler-plugin-3.1.pom
[INFO] Downloaded from tbmirror: http://repo.xxx-inc.com/mvn/repository/org/apache/maven/plugins/maven-compiler-plugin/3.1/maven-compiler-plugin-3.1.pom (10 kB at 33 kB/s)
......
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  17.584 s
[INFO] Finished at: 2023-08-15T14:30:36+08:00
[INFO] ------------------------------------------------------------------------

0xFF 权限安装问题

安装过程中,可能会出现这种由于无法验证开发者不给安装的情况:

此时打开 Mac 的系统设置中,隐私与安全性的标签页,向下拉动,

在安全性这里会出现这个 libjansi.jnilib 是否允许安装,选择“打开”,这一步就可以正常安装了。

完成后,可以新建或打开 Maven 项目

为某个项目安装依赖(该项目下有 pom.xml):

安装完成后,在资源管理器下面会出现 MAVEN 窗口(如图)

右键需要安装的项目,选择 “Run Maven Commands”,先点选 clean ,再点选 install,就会开始根据 settings.xml 里的配置进行安装:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1128479.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据结构:选择题+编程题(每日一练)

目录 选择题: 题一: 题二: 题三: 题四: 题五: 编程题: 题一:单值二叉树 思路一: 题二:二叉树的最大深度 思路一: 本人实力有限可能对…

缺少win32spl.dll文件? 教你快速修复win32spl.dll

缺少win32spl.dll文件?不要怕,其实这个问题还是比较好解决的,我们今天会给大家介绍多种的解决方法,让你花式去解决缺少win32spl.dll的问题,好了,废话不多少,我们一起进入正题吧。 一.介绍win32s…

在docker环境下从头搭建openvslam/orb_slam3的流程记录以及问题总结

文章目录 0. 前言1. MobaXterm软件2. docker操作2.1. 拉一个ubuntu镜像2.2. 修改名字(可选)2.3. 删除之前的docker镜像(可选) 3. openvslam搭建流程3.1. 起容器3.2. 前置包的安装3.3. 安装Eigen3.4. 安装opencv3.5. 安装DBoW23.6.…

uCOSIII实时操作系统 十一 消息传递

目录 消息队列: 消息列队相关的API函数 创建消息队列: 等待消息列队: 向消息列队发送消息: 消息队列实验 任务内嵌消息队列: 任务内建消息队列的API函数 等待任务内建消息: 发送任务内建消息&…

Python-pptx教程之一从零开始生成PPT文件

简介 python-pptx是一个用于创建、读取和更新PowerPoint(.pptx)文件的python库。 典型的用途是根据动态内容(如数据库查询、分析数据等),将这些内容自动化生成PowerPoint演示文稿,将数据可视化&#xff0c…

ES6初步了解生成器

生成器函数是ES6提供的一种异步编程解决方案,语法行为与传统函数完全不同 语法: function * fun(){ } function * gen(){console.log("hello generator");}let iterator gen()console.log(iterator)打印: 我们发现没有打印”hello…

计算机组成原理(一目了然的顶级总纲)(持续更新!)

文章目录 886冯诺依曼计算机计算机的五大部件(又称五大字系统)细化的计算机组成框图存储器 886 计算机系统由“硬件”和“软件”两大部分组成。 计算机的软件通常又可以分为两大类:系统软件和应用软件。 冯诺依曼计算机 数学家冯诺依曼&am…

MySQL数据库增删改查

删除表 drop table 表名; drop table if exists 表名;修改表 修改表名 alter table 表名 rename to 新表名;添加列 alter table 表名 add 列名 数据类型;删除列 alter table 表名 drop 列名;修改数据类型 alter …

WorkPlus专注私有化部署,为企业安全打造超级沟通协作APP

在如今全球化竞争和高速发展的商业环境中,企业内部的沟通和协作至关重要。面对众多的通讯和协作平台,WorkPlus独辟蹊径,专注私有化部署,致力于为企业打造安全专属、自主可控的超级沟通协作APP。正是这一专注与创新,让W…

发表《Nature》!哈佛大学团队成功研发自纠错量子计算机

(图片来源:网络) 量子计算机能达到当今最快的超级计算机也无法达到的速度和效率。然而,该技术尚未大规模推广和商业化,很大程度上是因为它无法自我纠错。与经典计算机不同,量子计算机无法通过一遍又一遍地…

双赢!企业咨询行业和低代码工具的破局之路

对于传统咨询企业来说,主要专注于流程和功能方面的咨询,在信息化时代中,以流程和业务驱动的模式为基础进行战略咨询、管理咨询和业务咨询,作为传统企业的外脑,在大数据时代,咨询行业在数智化时代如何应对自…

发表《数学》期刊!西班牙研究人员成功应用量子计算模型来预测多种疾病

Jos Luis Salmern 将量子计算应用于医疗保健领域(图片来源:网络) 谷歌量子人工智能(AI)研究小组的Sergio Boixo表示,量子计算还处于起步阶段,虽然很难预测其未来,但该技术已取得了一…

lvs+keepalived: 高可用集群

lvskeepalived: 高可用集群 keepalived为lvs应运而生的高可用服务。lvs的调度器无法做高可用,于是keepalived软件。实现的是调度器的高可用。 但是:keepalived不是专门为集群服务的,也可以做其他服务器的高可用。 lvs的高可用集群&#xf…

第九章 无线网络和移动网络 | 计算机网络(谢希仁 第八版)

文章目录 第九章 无线网络和移动网络9.1 无线局域网WLAN9.1.1 无线局域网的组成9.1.2 802.11局域网的物理层9.1.3 802.11局域网的MAC层协议9.1.4 802.11局域网的MAC帧 9.2 无线个人区域网WPAN9.3 无线城域网WMAN9.4 蜂窝移动通信网9.4.1 蜂窝无线通信技术简介9.4.2 移动IP9.4.3…

1. 概述

1.概述 1.1 信息时代的计算机网络 1.1.1 计算机网络的各类应用 1.1.2 计算机网络带来的负面问题 1.2 因特网概述 1.2.1 网络、互联网与因特网的区别与关系 若干个节点(Node)和链路(Link)互连形成了网络(Network&…

Flask后端开发(一)-基础知识和前期准备

目录 1.背景介绍1.1. 项目背景1.2. 项目难点1.3. 项目环境 2. flask后端开发实现的功能3. flask部署和前后端对接3.1. flask运行配置和服务器部署3.2. flask前后端传参 4. 后端测试工具4.1. 工具介绍4.2. 工具使用 后记 1.背景介绍 1.1. 项目背景 就是前几个月临时接手了一个…

Linux基础命令4——Linux快捷键与帮助命令

目录 Linux快捷键 Linux常用帮助命令 help命令——只适用于于内置命令 --help命令——只适用于外置命令 内外部都可使用的帮助命令 man命令 info命令 Linux快捷键 ctrlshift加号 放大屏幕 ctrl减号 缩小屏幕 ctrl l …

28、Flink 的SQL之DROP 、ALTER 、INSERT 、ANALYZE 语句

Flink 系列文章 1、Flink 部署、概念介绍、source、transformation、sink使用示例、四大基石介绍和示例等系列综合文章链接 13、Flink 的table api与sql的基本概念、通用api介绍及入门示例 14、Flink 的table api与sql之数据类型: 内置数据类型以及它们的属性 15、Flink 的ta…

中国技术的对外输出:Telegram也开始搞小程序应用了

Telegram 宣布为其开发者提供了一项“能够在其中运行迷你应用”的新功能( 迷你应用即 Mini App,下文中以“小程序”代替)。 在 Telegram 的博客中,开发人员介绍可以使用 JavaScript 构建自己的迷你应用 在一篇博客文章中&#xf…

蓝桥杯 Java 青蛙过河

import java.util.Scanner; // 1:无需package // 2: 类名必须Main, 不可修改/**二分法从大(n)到小找足够小的步长前缀和记录每个位置的前面有的总石头数(一个石头表示可以容纳一个青蛙,一位置有多少个石头hi就是多少)&…