maven的目录结构及仓库的配置

1.maven约定的目录结构。

每一个maven项目在磁盘中都是一个文件夹(项目-ch03-java)
ch03-java/
---/src
------/main #放主程序java代码和配置文件
----------/java #程序包和包中的java文件
----------/resources #java程序中要使用的配置文件

------/test #测试程序代码和文件的(可以没有)
----------/java #测试程序包和包中的java文件
----------/resources #测试java程序中要使用的配置文件

---/pom.xml #maven的核心文件(maven项目必须有)

idea中java项目的目录结构如下图所示

2.疑问: mvn compile 编译src/main目录下的所有java文件的。

  • 为什么要下载???

  答:maven工具执行的操作需要很多插件(java类--jar文件)来完成的

  • 下载什么东西了??

  答:jar文件--叫做插件--插件是完成某些功能

  • 下载的东西存放到哪里了?

  默认仓库(本机仓库):

       C:\Users\Lenovo(登录操作系统的用户名)\.m2\repository

  https://repo.maven.apache.org  中央仓库的地址


执行mvn compile, 结果是在项目的根目录下生成target目录(结果目录),
maven编译的java程序,最后的class文件都放在target目录中

设置本机存放资源的目录位置(设置本机仓库):
  1. 修改maven的配置文件, maven安装目录/conf/settings.xml
   先备份 settings.xml

  2. 打开settings文件,修改 <localRepository> 指定你想要存储的仓库目录(不要使用中文目录)

   

   3.建议在修改settings文件时,把阿里云的镜像代码也给加进去,这构建项目更快。

<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>

3.仓库

  • 仓库是什么: 仓库是存放东西的, 存放maven使用的jar 和 我们项目使用的jar
  • maven使用的插件(各种jar)
  • 我项目使用的jar(第三方的工具)
  • 仓库的分类
  • 本地仓库, 就是你的个人计算机上的文件夹,存放各种jar
  • 远程仓库, 在互联网上的,使用网络才能使用的仓库
    • 中央仓库,最权威的, 所有的开发人员都共享使用的一个集中的仓库,https://repo.maven.apache.org :中央仓库的地址
    • 中央仓库的镜像:就是中央仓库的备份, 在各大洲,重要的城市都是镜像。
    • 私服,在公司内部,在局域网中使用的, 不是对外使用的。
  • 仓库的使用,maven仓库的使用不需要人为参与。

  开发人员需要使用mysql驱动--->maven首先查本地仓库--->私服--->镜像--->中央仓库

4.pom:项目对象模型,是一个pom.xml文件

  • 坐标:唯一值, 在互联网中唯一标识一个项目的

        <groupId>公司域名的倒写</groupId>
        <artifactId>自定义项目名称</artifactId>
        <version>自定版本号</version>

  https://mvnrepository.com/ 搜索使用的中央仓库, 使用groupId 或者 artifactId作为搜索条件

  •  packaging: 打包后压缩文件的扩展名,默认是jar ,web应用是war,packaging 可以不写, 默认是jar
  •  依赖

        dependencies 和dependency ,相当于是 java代码中import

        你的项目中要使用的各种资源说明, 比我的项目要使用mysql驱动

<dependencies>

  <!--依赖 java代码中 import -->
       <dependency>
              <groupId>mysql</groupId>
              <artifactId>mysql-connector-java</artifactId>
              <version>5.1.9</version>
        </dependency>

</dependencies>

  • properties:设置属性
  • build : maven在进行项目的构建时, 配置信息,例如指定编译java代码使用的jdk的版本等


5.maven生命周期, maven的命令,maven的插件


maven的生命周期:就是maven构建项目的过程,清理,编译,测试,报告,打包,安装,部署
maven的命令:maven独立使用,通过命令,完成maven的生命周期的执行。
maven可以使用命令,完成项目的清理,编译,测试等等

maven的插件: maven命令执行时,真正完成功能的是插件,插件就是一些jar文件, 一些类。

  • 单元测试(测试方法):用的是junit, junit是一个专门测试的框架(工具)。

junit测试的内容: 测试的是类中的方法, 每一个方法都是独立测试的。
方法是测试的基本单位(单元)。

maven借助单元测试,批量的测试你类中的大量方法是否符合预期的。

  • 使用步骤

1.加入依赖,在pom.xml加入单元测试依赖
<!-- 单元测试 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>

2.在maven项目中的src/test/java目录下,创建测试程序。
推荐的创建类和方法的提示:
1.测试类的名称 是Test + 你要测试的类名
2.测试的方法名称 是:Test + 方法名称

例如你要测试HelloMaven ,
创建测试类 TestHelloMaven
@Test
public void testAdd(){
测试HelloMaven的add方法是否正确
}


其中testAdd叫做测试方法,它的定义规则
1.方法是public的,必须的
2.方法没有返回值, 必须的
3.方法名称是自定义的,推荐是Test + 方法名称
4.在方法的上面加入 @Test

3:mvn compile
编译main/java/目录下的java 为class文件, 同时把class拷贝到 target/classes目录下面
把main/resources目录下的所有文件 都拷贝到target/classes目录下

maven的目录结构及仓库的配置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

输出机器

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值