maven第二篇:IDE创建maven项目

news2024/9/19 10:43:17

前面将maven安装好了,当然起不会直接用,而是结合着一起用,那么现在就用IDE创建一个maven,来进行演示。

前提

IDE默认是带有maven软件,但是一般不习惯用起自带的,所以前提就是安装一个maven软件,可以看另一篇:maven第一篇:安装maven以及配置

在这里插入图片描述

所以如果界面略微不同,可以看一下自己使用的IDE版本。

创建一个maven项目

第一步:

在这里插入图片描述

第二步:

在这里插入图片描述

补充1–坐标

看图中两个GroupIDArtifactID关键名统称为坐标。

坐标是为了保证项目唯一性而提出的,如果你要把你项目弄到maven本地仓库去,你想要找到你的项目就必须根据这两个id去查找。

两个关键名的具体意义是:

  • GroupID 是项目组织唯一的标识符,实际对应JAVA的包的结构,是main目录里java的目录结构。
  • ArtifactID是项目的唯一的标识符,实际对应项目的名称,就是项目根目录的名称。

项目目录结构

在这里插入图片描述

可以看出创建一个maven的项目后会自动生存如图结构的文件,其实前面聊过javaweb,自然也就明白这个格式也可以说是统一maven项目的一个标准。

而这个目录结果为什么会是这样子,不用纠结,因为本身就是一种规范,如果非要理解为什么有这样规范,那么就和运行java文件的时候,必须通过main方法进行调用一样。

优先可以看见一个配置文件pom.xml,然后看一下起配置文件的内容(因为这个是一个简单java项目所以和下表中的目录结构有些不同,后面会聊如何生成一个javaweb项目):

在这里插入图片描述

其实上面有个路径没有说那就是target,也就是代码编译输出路径,不过不用创建,只要创建一个java文件然后执行就会生存这个文件,如下:

在这里插入图片描述

其实上面只是一部分目录,比如创建为web项目的时候也会有新的路径,从网上找一个图大家看一下:

在这里插入图片描述

这些文件路径,后面具体使用的时候具体说。

修改默认maven

打开设置:

在这里插入图片描述

在这里插入图片描述

当然如何界面也可以打 打开pom.xml然后如下也可以配置自己安装的maven软件。

在这里插入图片描述

可以看出起默认还是使用自带的maven,所以需要进行简单的设置。

在这里插入图片描述

不过这样设置有一个问题,那就是每次创建一个maven项目都需要重新配置一下这个maven。

全局默认maven

其实可以配置全局,那样就不用每次都修改了。

第一步:关闭界面的项目

在这里插入图片描述

第二步:进行自定义配置。

在这里插入图片描述

第三步:其实这个和单个项目配置的界面一样。所以就直接用图了

在这里插入图片描述

然后就设置全局了,不用每次打开都重写设置一遍了。

再IDE中使用maven创建web项目

第一种,直接通过模板创建

也可以使用模板进行创建

在这里插入图片描述

这个需要链接仓库会自动下载,所以需要修改为阿里云的镜像仓库,就直接等就可以了:

在这里插入图片描述

然后配置tomcat

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

然后启动tomcat即可。

第二种通过普通项目转换web项目

这个也是线创建一个普通的java项目,然后再让普通的java项目转换为web项目。

如下操作: File -------> project structure

在这里插入图片描述

当然也可以直接双击java文件夹也可以弹出上面的对话框。

通过上面操作可以打开如下:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

然后删除web目录即可然后再 webapp目录下创建一个index开头的页面文件。

前面说maven可以通过pom.xml配置文件,然后下载资源外,还可以通过maven的命令实现,打包部署等功能,可以说是方便程序员开发和测试。

这个就有一个问题,默认情况下打包是jar,而web项目一般是打包为war。所以需要修改pom.xml文件。

在这里插入图片描述

然后按照第一种方法进行配置tomcat即可。

然后可以再web路径下创建index.html,已经按照前面学javaweb项目中路径依次创建文件夹。这个就需要手动创建了,不需要通过IDE进行创建了。

补充

其实再IDE中创建maven项目外,还可以再起项目下创建moudle(模块),而不同的moudle可以可以创建maven普通java项目或者web项目。不过起步骤和创建maven项目除了创建一个选择project而一个选择moudle,其它的没有不同。

其实创建这样多,似乎没有提到所谓的自动测试。当然maven命令,IDE其实也是给了提示的,可以如下打开:

在这里插入图片描述

下一篇再聊具体的命令含义。

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

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

相关文章

HUAWEI CLOUD Stack 私有云解决方案(HCS)

HUAWEI CLOUD Stack 私有云解决(HCS) 注明: 本文介绍的版本为HUAWEI CLOUD Stack 6.5(也叫华为云Stack或HCS), 在华为6.5版本以前的名字是FusionCloud 6.3, 最近更新的8.0版本不会差别太大&…

Java开发学习(三十九)----SpringBoot整合mybatis

一、回顾Spring整合Mybatis Spring 整合 Mybatis 需要定义很多配置类 SpringConfig 配置类 导入 JdbcConfig 配置类 导入 MybatisConfig 配置类 Configuration ComponentScan("com.itheima") PropertySource("classpath:jdbc.properties") Import({JdbcC…

Trie 字典树

Trie Trie,又称字典树或前缀树。是一棵有根的多叉树。用于高效存储和查找字符串集合。 字典树从根到树上某一结点的路径就是一个字符串。 一棵字典树的构造过程图解: 字典树的度和字符集有关,英文字符集是26个字母,那么字典树的…

通用vue组件化登录页面

一、首页设置大体的样式布局 1.首先建立一个login文件夹,在里面建立对应的login.vue文件 2.设置登录页面的背景图,在App.vue文件中使用router-view进行展示登录组件 3.先给App.vue的div元素设置高度100%,之后在login.vue里面去设置背景图 …

财务管理系统|基于Springboot开发实现公司财务管理系统

作者主页:编程指南针 作者简介:Java领域优质创作者、CSDN博客专家 、掘金特邀作者、多年架构师设计经验、腾讯课堂常驻讲师 主要内容:Java项目、毕业设计、简历模板、学习资料、面试题库、技术互助 收藏点赞不迷路 关注作者有好处 文末获取源…

知识库软件应该具备的7个基本功能

SaaS公司最大的业务挑战是:如何留住客户,客户与你达成合作关系后,如何让其与你继续合作,达成长期合作关系。对于SaaS产品,丢失客户的成本是很昂贵的,赢得一个新客户的成本是留住现有客户的5到25倍&#xff…

Vue脚手架的使用

一、通过命令行使用vue-cli的指令创建 1. 安装:npm i -g vue/cli-init 2. 创建Vue项目(Vue2.0项目): ​ (1)创建文件夹:vue2-demo ​ (2)进入文件夹:cd v…

[Leetcode] 相交链表

给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。图示两个链表在节点 c1 开始相交:题目数据保证整个链式结构中不存在环。注意,函数返回结果后&#xf…

【 java 集合】Set 接口及常用实现类总结

📋 个人简介 💖 作者简介:大家好,我是阿牛,全栈领域优质创作者。😜📝 个人主页:馆主阿牛🔥🎉 支持我:点赞👍收藏⭐️留言&#x1f4d…

JavaEE【Spring】:Spring事务和事务传播机制

文章目录前言一、Spring 中事务的实现1、MySQL 中的事务使用2、Spring 编程式事务(了解)3、Spring 声明式事务(自动)① Transactional 作用范围② Transactional 参数说明③ 注意事项Ⅰ. 抛出异常Ⅱ. 手动回滚④ Transactional ⼯…

2022年亚太地区大学生数学建模竞赛/2022年亚太杯1月加赛E题思路

问题1. 基本数据分析数据集中的OWID_WRL是什么?一般是指世界world。a) 哪些国家曾经拥有过核武器?现拥有核武器的国家有9个,分别为:美国、俄罗斯、英国、法国、中国、印度、巴基斯坦、以色列,朝鲜。曾经拥有核武的国家…

【python】导入同级、下级、上级目录中的模块

不想把代码都堆到一个文件里面,希望写的分层次,但又不是web框架,有入口文件和目录规则, 这个时候就要自己分包了,会遇到这个问题,明明ide智能追踪可以定位到包引用,但是却报错module undefine&a…

5G NR标准 第15章 上行功率和定时控制

第15章 上行功率和定时控制 上行链路功率控制和上行链路时序控制是本章的主题。 功率控制用于控制干扰,主要是针对其他小区的干扰,因为同一小区内的传输通常是正交的。 时序控制确保不同的设备以相同的时序接收,这是保持不同传输之间正交性…

Nacos设置为windows自启动服务

序言 众所周知,在 Windows 环境下想要启动 nacos 需要运行 bin 目录下的 startup.cmd。这样的启动方式需要保证 cmd 窗口一直开着,只要把这个窗口关掉,nacos 服务就停了。 所以为了避免人为的误关窗口,把 nacos 注册成一个 wins…

【可视化】无法理解PCA,条件概率,最小二乘回归?可视化帮你!

主成分分析PCA2D示例首先,只考虑两个维度的数据集,比如高度和重量。这个数据集可以绘制成平面上的点。但如果想要整理出变量,PCA会找到一个新的坐标系,其中每个点都有一个新的(x,y)值。坐标轴实际上没有任何物理意义。它们是高度和…

【JavaScript】如何转换blob数据与file文件还有url

大家好,关于blob对象和file对象有了解多少呢,它们都是一种文件的表示形式,文件之间是可以互相转换的,顺带一提,还有经常用到的临时文件路径tempFileURL。 文章目录文件类型Blob对象File对象URL临时路径文件类型 首先&…

c++ -- STL容器--vector

STL中最常用的容器为Vector&#xff0c;可以理解为数组#include <iostream> #include <vector> #include <algorithm> using namespace std;void myPrint(int val) {cout <<val<<endl; }//vector容器存放内置数据类型void test01() {//创建了一个…

数据库(tidb、clickhouse、hive)概念笔记

目录 1、有哪些分布式数据库 2、OLAP、OLTP、HTAP 3、TIDB、clickhouse、hive 一、TIDB 1. TiDb 核心特性&#xff1a; 2. TiDb 整体架构&#xff1a; 3.TiDB 存储&#xff1a; 二、clickhouse 三、hive 1.什么是 Hive&#xff1f; 2.Hive 架构和如何运作&#xff1…

KMP -- 代码求解next数组

代码求解next数组 1. KMP相关概念 前缀&#xff1a;包含首位字符但不包含末位字符后缀&#xff1a;包含末位字符但不包含首位字符next数字&#xff1a;主串与模式串不匹配时&#xff0c;模式串需要回退的位置next[j]&#xff1a;第 j 位字符前面的j-1位字符组成的字串的前后缀…

QGIS查看属性和选择要素

目录1. 查看属性和选择要素2. 调整图层样式&#xff0c;添加自动标注1. 查看属性和选择要素 #pic_center x400 暂时移除&#xff0c;不是删除&#xff0c;它还是存在它本来的位置&#xff0c;用的时候再次添加即可。 选择工具 点完工具后&#xff0c;点击图中一个点&#xf…