目录 Maven多模块项目设计与原理 1. 模块化架构思想 2. 典型模块划分方式 3. 而随着业务需求的推进,原始的单体架构难以维持需求,因而推出了maven多模块,由原始的一个项目演变成多个项目关联,每个模块实现特定的功能,需要什么就引入特定的依赖。 Maven多模块项目设计与原理 1. Maven的继承与聚合 继承 概念:继承描述的是两个工程间的关系,与java中的继承相似,子工程可以继承父工程中的配置信息,常见于依赖关系的继承。 版本锁定 在maven中,可以在父工程的pom文件中通过<dependencyManagement>来统一管理依赖版本。
Maven的下载地址是:http://maven.apache.org/download.cgi 安装Maven非常简单,只需要将下载的压缩文件解压就可以了。 cd /data wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz tar zxf apache-maven-3.5.2-bin.tar.gz mv apache-maven-3.5.2 maven3 确保每次初始化时,环境变量都正确: vim /etc/profile.d ]# mvn -v Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T15:58:13+08:00) /jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "3.10.0-693.5.2.el7.
Maven的下载地址是:http://maven.apache.org/download.cgi 安装Maven非常简单,只需要将下载的压缩文件解压就可以了。 cd /data wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz tar zxf apache-maven-3.5.2-bin.tar.gz mv apache-maven-3.5.2 maven3 确保每次初始化时,环境变量都正确: vim /etc/profile.d ]# mvn -v Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T15:58:13+08:00) /jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "3.10.0-693.5.2.el7.
Mr.chengJQ centos7 安装maven 进入指定目录 cd /usr/local/src/ 下载maven 包 wget http://mirrors.hust.edu.cn/apache /maven/maven-3/3.1.1/binaries/apache-maven-3.1.1-bin.tar.gz 解压改名 tar zxf apache-maven-3.1.1-bin.tar.gz mv apache-maven-3.1.1 /usr/local/maven3 vi /etc/profile然后还需要 配置环境变量。 #在适当的位置添加 export M2_HOME=/usr/local/maven3 export PATH=$PATH:$JAVA_HOME/bin:$M2_HOME/bin 保存退出后运行下面的命令使配置生效 source /etc/profile 验证版本 mvn -v 出现maven版本即成功
将作为下一代 项目管理工具来取代maven,但是 由于maven强大和健全的功能,maven还有很强的生命力。 读完本文,你将了解到: 一、maven对项目生命周期的抽象--三大项目生命周期 二、maven对项目默认生命周期的抽象 三、maven指令与生命周期阶段的关系 四、maven生命周期各个阶段的行为与 maven默认行为 五、maven项目的目录结构 六、maven为生命周期阶段绑定特定行为动作的机制即插件原理 一、 maven对项目生命周期的抽象--三大项目生命周期 ? 四、maven生命周期各个阶段的行为与maven默认行为 使用过maven的读者会经常使用这些maven指令: mvn compile //让当前项目经历生命周期中的1-->7 阶段 :完成编译主源代码编译 阶段; 5).运行test测试用例-------test阶段; 6).将compile阶段编译的class文件和resource资源打包成jar包或war包--------package阶段; 7)
一、下载maven包 tar.gz结尾 Maven官方 二、上传到Linux服务器上 三、解压到local文件夹下 tar -xf apache-maven-3.8.4-bin.tar.gz -C /usr/local/ 四、放到maven3.8文件夹下 mv /usr/local/apache-maven-3.8.4/ /usr/local/maven3.8 五、建立一个软连接 ln - s /usr/local/maven3.8/ /usr/local/maven 六、配置环境变量 vim /etc/profile 末尾加入 export MAVEN_HOME=/usr/local/ maven export PATH=$PATH:$MAVEN_HOME/bin 七、刷新配置文件让配置文件生效 source /etc/profile 八、测试安装是否成功 mvn -v 出现版本号即成功
2.在<dependencies>标签中使用<dependency>引l入坐标 3.定义坐标的groupld,artifactld,version 4.点击刷新按钮,引入最新加入的坐标 引入 Maven 依赖管理 自动下载:自动从 Maven 中央仓库(或其他配置的仓库)下载项目所需的第三方库 版本控制:精确控制每个依赖的版本,避免版本冲突 传递性依赖:自动处理依赖的依赖(如 A 依赖 B ,B 依赖 C,Maven 会自动下载 C) 2. 中手动配置 第一次配置时可能不会提示,这时,我们可以打开maven依赖仓库Maven Repository: Search/Browse/Explore,手动的复制粘贴到pom.xml文件中,不要忘记刷新即可 (package指令范围内) 生命周期 Maven的生命周期就是为了对所有的maven项目构建过程进行抽象和统一。 Maven中有3套相互独立的生命周期: clean:清理工作。
tomcat7 需要使用 tomcat-maven-plugin 的新版本,版本支持tomcat6和tomcat7,groupId也由org.codehaus.mojo改为org.apache.tomcat.maven 的setting.xml文件,地址 %MAVEN_HOME%\conf\setting.xml 此处的MAVEN_HOME是maven的安装地址。 插件信息 <pluginManagement> <plugins> <plugin> <groupId>org.apache.tomcat.maven</ </groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.0-SNAPSHOT build的goals中输入命令tomcat7:deploy即可发布 , 或在Run Configurations->Maven build新建一个命令,base directory里选择你的web
安装(非必须) 1>下载 maven 安装包资源 1> //进入指定目录 cd /usr/local/ 2>//创建目录 mkdir maven 3> //进入maven目录 cd maven/ yum.repos.d/epel-apache-maven.repo 2>安装 maven yum -y install apache-maven 3>配置环境变量 1>编辑 vi /etc/profile 2>末尾添加: export MAVEN_HOME=/maven_path export PATH=$PATH:$MAVEN_HOME/bin 3>使配置生效: source /etc/profile 防火墙机制 iptables(被淘汰的内容,请自行百度) >= CentOs7:1.CentOS7 使用 firewalld 打开关闭防火墙与端口。 noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm 2>使用yum安装ngnix [root@localhost ~]# yum
title: Centos7 安装 maven 实践笔记 自用 categories: [JDK8,Centos 7,maven] tags: [JDK8,Centos 7,maven] 我使用centos7X64 最小化安装 CentOS-7-x86_64-Minimal-1708 没装jdk的同学,请移步【centos7 安装 jdk8 的正确姿势 并设置开机自启】的文章 1.安装wget yum -y install wget 2.下载maven wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven /local/maven3 export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin 6.配置文件立即生效 source /etc/profile 7.查看是否安装成功 jdk1.8.0_211/jre Default locale: zh_CN, platform encoding: UTF-8 OS name: "linux", version: "3.10.0-693.el7.
1.创建一个maven文件夹 [root@MiWiFi-R3-srv ~]# mkdir /usr/local/maven 1 2.上传apache-maven-3.5.0-bin.tar.gz到/usr apache-maven-3.5.0-bin.tar.gz -C /usr/local/maven/ 1 4.设置环境变量 [root@MiWiFi-R3-srv ~]# vim /etc/profile 1 在/etc/profile的文件末尾添加以下配置: export M2_HOME=/usr/local/maven/apache-maven-3.3.9 export PATH=$JAVA_HOME 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; 2017-04-04T03:39:06+08:00) Maven home: /usr/local/maven _144/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "3.10.0-327.el7.x86
http://mirrors.shuosc.org/apache/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.tar.gz 1.创建一个 maven文件夹 [root@MiWiFi-R3-srv ~]# mkdir /usr/local/maven 1 2.上传apache-maven-3.5.0-bin.tar.gz到/usr/local /maven/目录下 链接: https://pan.baidu.com/s/1c6QDXW 密码: ymq2 3.解压 [root@MiWiFi-R3-srv ~]# tar -zxvf apache-maven 的文件末尾添加以下配置: export M2_HOME=/usr/local/maven/apache-maven-3.3.9 export PATH=$JAVA_HOME/bin:$JAVA_HOME _144/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "3.10.0-327.el7.x86
ps:maven运行需要依赖jdk,请确保安装电脑上已安装jdk 以apache-maven-3.5.3-bin为例进行说明 1.maven官网下载压缩包,官网地址:https://maven.apache.org /download.cgi 2.解压下载的软件到指定目录(解压即安装),如:D:\softtools\apache-maven-3.5.3-bin 3.配置maven的环境变量: 桌面右击 计算机= 》属性=》高级系统设置=》环境变量 在打开的环境变量界面的系统变量中,新建系统变量,变量名;MAVEN_HOME,变量值(解压的根目录):D:\softtools\apache-maven-3.5.3 5.maven配置文件添加镜像 打开apache-maven-3.5.3-bin/conf/settings.xml 配置文件 找到文件中的<mirrors></mirrors>节点 在节点中增加 /repo2.maven.org/maven2</url> </mirror> 即配置成功镜像地址
3.2 依赖不在Maven仓库,怎么办?四、如何解决依赖冲突?4.1 Maven默认的解决方式4.2 手工解决方式4.3 其他方式一、前言背景 Maven是什么? 话不多说,今天正式开始我们的《Maven实战进阶系列》之旅。保持一贯风格,行文尽可能通俗易懂、图文并茂,以核心架构原理开局,力争以实战demo进阶,最后愿我们学海无涯,所见皆有所获。 推荐阅读拉丁解牛相关专题系列(欢迎交流讨论公众号搜:拉丁解牛说技术):1、JVM进阶调优系列(5)CMS回收器通俗演义一文讲透FullGC 2、JVM进阶调优系列(4)年轻代和老年代采用什么GC算法回收 3、JVM进阶调优系列(3)堆内存的对象什么时候被回收?4、JVM进阶调优系列(2)字节面试:JVM内存区域怎么划分,分别有什么用? 5、JVM进阶调优系列(1)类加载器原理一文讲透6、JAVA并发编程系列(13)Future、FutureTask异步小王子7、MySQL进阶突击系列(05)突击MVCC核心原理 | 左右护法ReadView
报错: <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin 最后还是不头铁,这样写了 <build> <plugins> <plugin> <groupId>org.apache.tomcat.maven </groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.1 uriEncoding> <url>http://localhost:8080/shiro</url> <server>Tomcat7< <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version>
<plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId <path>/</path> <port>80</port> </configuration> </plugin> pom文件中加入上面的配置,执行的时候执行tomcat7:
定义EAR maven模块 在下图可以看到,我们在sample-parent下定义了一个空文件夹,叫做sample-ear。这个文件夹需要有一个pom.xml文件。 EAR MAVEN模块的主要目的是为了“配置”著名的maven-ear插件,这个插件将会被maven引用,并且用来生成我们最后的部署应用程序。 最后,我们需要微调一下maven-war插件。我们需要在父pom中覆盖指定的默认行为,并为这个特殊的依赖关系指定一个正确项。 从零开始,应用基本的maven准则为Java企业级应用构建一些基本的maven模块。你可以使用这个例子,任意扩展满足你的需求。 迄今为止它完全满足你的所有需求,它是Maven开始、思考和配置的一个很好的实例。 接下来的文章将会扩充这个例子,加入更多maven的模块,使用更多maven的功能。
今天通过Eclipse创建一个maven项目, <dependency> <groupId>javaee</groupId> <artifactId> javaee-api</artifactId> <version>7</version> </dependency> 提示Missing artifact javax: javaee-api:jar:7.0 百度了一下,各种说法都有,后来在Maven库官网http://mvnrepository.com找到了答案: http://mvnrepository.com
记得我们已经在父pom的依赖管理部分(dependency management)定义过了javaee-api jar包的版本,在插件管理部分(plugin management)还需要一个maven插件来专门负责打包我们 它就是maven-ejb-plugin。可以回到父pom中,查找以上两点。由于这些元素都定义在了父pom里,所以我们的ejb service pom看起来就小多了。 按照惯例,Maven将负责大多数东西。maven的ejb插件将踢开,因为我们已经定义了需要此模块的包是“ejb”。 我们的工程结构看起来是这个样子的: ? 在Java EE7里面,这个文件已经简化了许多,我们甚至可以略过数据源的定义,因为已经有一个默认的数据源。参考这里。 关于目录创建需要注意:如果你使用一个诸如Eclipse或者Intellij这样的IDE来添加maven模块,一旦你创建了一个新的模块并定义一个POM,IDE会根据Maven约定自动创建你的模块该有的标准目录结构
1 下载压缩文件 wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9 -bin.tar.gz 2 解压 tar -zxvf apache-maven-3.3.9-bin.tar.gz 3 配置环境变量 vim ~/.bash_profile 在文件末尾增加以下配置 : 简化名称 mv apache-maven-3.3.9 maven 立即生效 source ~/.bash_profile 4 验证