前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Maven 入门教程

Maven 入门教程

原创
作者头像
ruochen
修改2022-03-07 17:54:34
1.7K0
修改2022-03-07 17:54:34
举报
文章被收录于专栏:若尘的技术专栏

下载安装

环境变量配置

  • 依赖 Java,需要配置 JAVA_HOME
  • 配置 MAVEN_HOME
  • 测试:mvn

配置

更改本地仓库位置

  • settings.xmlxml <localRepository>仓库位置</localRepository>-setting.xmlxml <mirror> <id>aliyunmaven</id> <mirrorOf>central</mirrorOf> <name>aliyun</name> <url>https://maven.aliyun.com/repository/public</url> </mirror>`

Maven 命令

  • 编译命令:mvn compile
  • 清理命令:mvn clean
  • 测试命令:mvn test
  • 打包命令:mvn package
  • 安装到本地仓库:mvn install

Maven 工程

插件创建工程

  • 创建工程 `shell mvn archetype:gengrate -DgroupId={project-packaging} -DartifactId={project-name} -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false `
  • 创建一个 Empty Project
  • 在 settings 中修改为自己的路径
    在这里插入图片描述
    在这里插入图片描述
  • 创建一个 maven module
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    骨架创建 Maven 工程
  • new module
    在这里插入图片描述
    在这里插入图片描述
    Web 工程
  • new module
    在这里插入图片描述
    在这里插入图片描述
    依赖管理
  • 依赖传递 - \\直接依赖\\:在当前项目中通过依赖配置建立的依赖关系 - \\间接依赖\\:被资源的资源如果依赖其他资源,当前项目间接依赖其他资源
  • 依赖传递冲突问题 - \\路径优先\\:当依赖中出现相同的资源时,层级越深,优先级越低,层级越浅,优先级越高 - \\声明优先\\:当资源在相同层级被依赖时,配置顺序靠前的覆盖配置顺序靠后的 - \\特殊优先\\:当同级配置了相同资源的不同版本,后配置的覆盖先配置的
  • 依赖范围
    在这里插入图片描述
    在这里插入图片描述
  • 依赖范围传递性
    在这里插入图片描述
    在这里插入图片描述
    生命周期与插件构建项目生命周期
    在这里插入图片描述
    在这里插入图片描述
  • clean:清理工作 - pre-clean:执行一些需要在clean之前完成的工作 - clean:移除所有上一次构建生成的文件 - post-clean:执行一些需要在clean之后立刻完成的工作
  • default:核心工作,例如编译、测试、打包、部署等
    在这里插入图片描述
    在这里插入图片描述
  • site:产生报告,发布站点等
    在这里插入图片描述
    在这里插入图片描述
    插件
  • 插件与生命周期内的阶段绑定,在执行到对应的生命周期时执行对应的插件功能
  • 默认maven在各个生命周期上绑有预设的功能
  • 通过插件可以自定义其他功能
  • eg `xml <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>2.2.1</version> <executions> <execution> <goals> <goal>jar</goal> </goals> <phase>generate-test-resources</phase> </execution> </executions> </plugin> </plugins> </build> ```
  • 创建 Java 工程 `shell mvn archetype:generate -DgroupId=com.ruochen -DartifactId=java-project -DarchetypeArtifactId=maven-archetype-quickstart -Dversion=0.0.1-snapshot -DinteractiveMode=false `
  • 创建 web 工程`shell mvn archetype:generate -DgroupId=com.ruochen -DartifactId=web-project -DarchetypeArtifactId=maven-archetype-webapp -Dversion=0.0.1-snapshot -DinteractiveMode=false

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 下载安装
  • 环境变量配置
  • 配置
    • 更改本地仓库位置
    • Maven 命令
    • Maven 工程
      • 插件创建工程
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档