zoukankan      html  css  js  c++  java
  • [Java] Maven

    介绍

    • Maven:用于构建和管理Java相关项目的工具
    • 三种工程
      • jar:包括class文件,是开发是要引用的通用类
      • war:包括WEB-INF,是做好的web应用,如网站或服务
      • pom(project object mode):做jar包的版本控制
    • 一键迁移项目
    • 远程热部署
    • 持续集成(CI)中的重要角色(配合jenkins)
    • 节省本地磁盘空间(告诉项目使用哪个jar,去哪找)

    使用

    • maven安装目录
      • bin:存放启动执行脚本
      • boot:存放启动maven的引导文件
      • conf:存放maven核心配置文件
      • lib:存放maven运行时依赖jar文件
    • 项目目录结构

    • 统一维护jar包
      • 把所有的jar包都放在"仓库“ 里
      • 在pom.xml里写包名和版本号
      • 不同项目共享jar包
    • maven构建项目时,默认到本地仓库找依赖,如果没有就去网上下载到本地仓库
    • maven构建项目后,全部产物在target目录中
    • maven构建生命周期
      • 清理(clean)--编译(compile)--测试(test)--打包(package)--部署(deploy)
    • 项目坐标(maven项目唯一标识)
      • groupId:公司组织名、域名倒置
      • artifactId:项目名
      • version:版本号
    • name:项目名
    • url:项目上线地址
    • properties:项目配置
      • sourceEncoding:项目编码
      • compiler.source:JDK版本
    • build:
      • fileName:当前项目名称
      • pluginManagement:项目中使用的插件版本
    • scope
      • test:编译、测试时生效,运行时无效
      • compile:默认属性,编译、测试、运行时都生效 
      • provided:编译、测试、运行时生效,仅在当前容器中生效(部署到tomcat中不生效,适用于部署容器自带依赖的情况)

    仓库

    • 用于存放项目需要的jar包,实现多个项目共享
    • 设置仓库位置
      • apache-maven-3.5.0confsettings.xml
    • 设置下载路径
      • 默认下载路径在国外
      • 设置成阿里云路径

    Eclipse设置

    • 设置Maven路径
      • 菜单->Window->Preferences->Maven->Installations-> 指定路径
    • 设置仓库路径
      • 菜单->Window->Preferences->Maven->User Settings->Global Settings

    scope

    添加包

    • 给Maven项目添加jar
      • pom.xml->OverView->Add->Enter GroupId...->包名(Scope要选择compile)
      • 保存后运行
    • 无法搜索到,重建本地仓库
      • 菜单->Window->Show View->Other->Maven->Maven Repositories->Local Repository->Rebuild Index

    示例

    • taotao-parent:整个项目的父工程,用来做版本控制(pom)
    • taotao-manager:用来做聚合工程(pom)
      • taotao-manager-pojo(jar)
      • taotao-manager-dao(jar)
      • taotao-manager-service(jar)
      • taotao-manager-web(war)
    • taotao-rest(war)
    • taotao-portal(war)
    • taotao-common(jar)

    参考

    Maven中心库

    https://mvnrepository.com/

    Eclipse中导入Maven(Web)项目并配置运行

    https://blog.csdn.net/itbiggod/article/details/79490219

    Eclipse中导入Maven项目后没有run on server

    https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/84989742

    https://blog.csdn.net/Mr_Yzko/article/details/78458873

    eclipse使用maven教程

    https://blog.csdn.net/learn_tech/article/details/82491412

    eclipse.ini配置详解

    https://blog.csdn.net/wqy_zyc/article/details/79661757

    Downloading Apache Maven 3.6.3

    http://maven.apache.org/download.cgi

    Maven父子工程

    https://www.cnblogs.com/chy18883701161/p/12297476.html

    调用其它模块module的类方法

    https://blog.csdn.net/big_data1/article/details/81218006

    删除项目,关闭自动打开上一次项目

    https://blog.csdn.net/weixin_41446182/article/details/95760734

  • 相关阅读:
    Nginx平滑升级
    svn部署-linux
    svn服务备份与还原
    vmware exsi安装部署
    redis主从复制读写分离
    redis配置文件详解
    zabbix与agent端通信加密
    部署owa预览服务
    zabbix-3.4邮件报警
    centos7--zabbix3.4微信报警
  • 原文地址:https://www.cnblogs.com/cxc1357/p/12525148.html
Copyright © 2011-2022 走看看