-
项目管理利器(Maven)——聚合 1.聚合:如果项目D依赖项目C,项目C依赖项目B,项目B依赖项目A,我们需要一个个安装这项项目,在Maven中有一种方式可以将多个项目一次性安装,这就是聚合的概念。简单讲就是,需要人工多次操作的,只要MAVEN能理解,一次性告诉他,他就能帮我们做这件单调烦人的事情了。——使用<modules></modules>这个标签。 2.继承:多次使用到的依赖,比如:单元测试,没有必要在所有的项目中都引用一下,此时就可以采用继承的方式来实现,先来一个父级的POM.XML然后再继承此POM.XML。查看全部
-
项目管理利器(Maven)——依赖冲突 如果C和D依赖了一个不同版本的相同的构件C。 ①:短路优先: 会优先解析路径短的版本(D)。 A -> B -> C -> X(jar) A -> D -> X(jar) 优先解析短的 ②:先声明先优先:A->C->jar,A->D->jar 如果路径长度相同,则谁先声明,先解析谁(C)。查看全部
-
修改maven默认jre版本,在setting.xml中更改 <profile> <id>jdk-1.7</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.7</jdk> </activation> <properties> <maven.compiler.source>1.7</maven.compiler.source> <maven.compiler.target>1.7</maven.compiler.target> <maven.compiler.compilerVersion>1.7</maven.compiler.compilerVersion> </properties> </profile>查看全部
-
项目管理利器(Maven)——依赖范围(classPath:编译,运行,测试) 1.compile:默认范围,编译测试运行都有效 2.provided:在编译和测试时有效 3.runtime:在测试和运行时有效 4.test:只在测试时有效 5.system:在编译和测试时有效,与本机系统关联,可移植性差 6.import:导入的范围,它只使用在dependencyManagement中,表示从其他的pom中导入dependency的配置查看全部
-
<dependencyManagement>表示依赖管理,其下存在<dependencies>、<dependency>. 在该标签下的依赖并不会引用到项目实际的依赖当中. 该标签主要定义在父模块中,供子模块继承使用. <build>作用是为构造行为提供相应的支持.经常在<build>标签中使用<plugins>标签(插件列表). 在<plugins>标签下可以包含多个<plugin>标签,在<plugin>标签下指定坐标. <parent>标签通常用于子模块中对父模块pom的继承. <modules>标签用于聚合运行多个maven项目,在该标签下存在<module>标签用来指定其他的maven项目.(把多个项目引入进一个项目,一次性运行)查看全部
-
<dependencies>表示依赖列表,在其下可以包含多个<dependency>依赖项. <dependency>标签下需要通过<groupId><artifactId><vesion><scope>来定位项目所依赖jar包的坐标. <dependency>标签下还存在<optional>、<exclusions>标签. <optional>标签值分别是true和false.设置依赖是否可选.默认是false,则子项目默认是继承的.如果为true.则子项目不继承. <exclusions>表示排除依赖传递列表.其下可由多个<exclusion>标签对组成. (A依赖B,B依赖C,那么A就依赖C,此时可以用该标签排除A依赖C) maven为项目提供了三种classpath,分别是编译、测试、运行. <scope>依赖范围: compile:编译依赖范围(默认),使用此依赖范围对于编译、测试、运行三种 classpath都有效,即在编译、测试和运行的时候该依赖jar包依然有效. test:测试依赖范围,依赖范围只能用于测试classpath,而在编译和运行项目时无法使用此类依赖,典型的是JUnit,它只用于编译测试代码和运行测试代码的时候才需要. provided:此依赖范围,对于编译和测试classpath有效,而对运行时无效. runtime:运行时依赖范围,对于测试和运行classpath有效,但是在编译主代码时无效,典型的就是JDBC驱动实现. system:系统依赖范围,使用system范围的依赖时必须通过systemPath元素显示地指定依赖文件的路径,不依赖Maven仓库解析,所以可能会造成建构的不可移植,谨慎使用.查看全部
-
<name>表示项目的描述名(一般在产生项目文档的时候才使用) <url>表示项目的地址. <description>表示项目的描述. <developers>表示开发人员列表 <licenses>表示许可证信息 <organization>表示组织信息查看全部
-
pom.xml常用标签: pom.xml是maven的核心管理文件. <project>是pom文件的根元素,包含了maven的约束信息. <modelVersion>指定了当前pom的版本,默认是一个固定的版本 4.0.0 maven项目与实际项目不是一一对应的关系. maven项目体现的是模块化的概念.因此一个实际项目往往会划分出很多个模块. <groupId>表示项目包名(公司域名反写+项目名) <artifactId>表示模块名,即Maven项目名(一般是由项目名+模块名) <version>表示当前maven项目的版本号 (版本号一般都是由3个数字组成) 第一个0表示大版本号 第二个0表示分支版本号 第三个0表示小版本号 <packaging>表示maven项目打包方式,即项目打包后生成包的类型(默认是jar).查看全部
-
pom.xml clean package 执行某个阶段时前面的阶段会自动运行查看全部
-
项目管理利器(Maven)——maven的生命周期和插件 Maven的生命周期大概如下: clean compile test package install 这几个命令对应了一个项目的完整的构建过程,这几个步骤对应的都有插件来完成: 清理、编译、测试、打包、集成测试、验证、部署 Maven的生命周期分为三个独立的生命周期(每一个生命周期有分为若干个阶段,其中defaul是最核心的一个): 1. clean 清理项目 2. default 构建项目 3. site 生成项目的站点 1、clean 清理项目: pre-clean :执行清理前的工作 clean:清理上一次构建生成的所有文件 post-clean:执行清理后的文件 2、default构建项目(最核心) compile test package install 3、site 生成项目站点 pre-site 在生成项目站点之前要完成的工作 site 生成项目的站点文档 post-site在生成项目站点后要完成的工作 site-deploy发布生成的站点到服务器上 注意:Maven的生命周期对应的命令是顺序执行的,如果没有人为的顺序的一个个执行,那么Maven会默认的自动运行。查看全部
-
setting.xml文件中的镜像写法: <mirrors> <mirror> <id>UK</id> <name>UK Central</name> <url>http://uk.maven.org/maven2</url> <mirrorOf>central</mirrorOf> </mirror> </mirrors>查看全部
-
在eclipse中安装maven插件以及创建maven项目: ①在eclipse4.0及MyEclipse中就不需要安装maven插件,在window--preference中可以查看是否有maven插件,没有的话就需要安装Maven插件,直接复制Maven插件到eclipse安装目录中的dropins中,然后修改eclipse.ini,在这个文件里的512m后面添加-vm,换行,再添加jdk/bin的路径加进去,再添加javaw.exe.保存。 ②eclipse是默认运行在jre之上的而maven需要jdk的支持,需要tools.jar在jdk/lib目录中,使用目录中私有的jre,所以修改eclipse的JRE,java---Installed JREs--ADD--Next--把本地JDK的目录放到JRE home中,并设置Dmaven.multiModuleProjectDirectory=$M2_HOME--最后勾选JDK ③更改maven本地的配置Installactions---ADD---把本地的maven目录放进去 ④修改setting,防止重装系统删除了以前的信息查看全部
-
项目管理利器(Maven)——maven中的坐标和仓库 1、坐标。 2、构件通过坐标作为其唯一标识。 3、仓库: -本地仓库。 -远程仓库:maven-model-builder-3.3.3.jar\org\apache\maven\model,超级pom.xml文件,全球中央仓库地址:https://repo.maven.apache.org/maven2 -镜像仓库:/conf/setting文件: <mirror> <id>maven.net.cn</id> <mirrorOf>central</mirrorOf> <name>central mirror in china</name> <url>http://maven.net.cn/content/groups/public</url> </mirror> 4、修改本地仓库的位置:<localRepository>D:/Maven/repository</localRepository> Ps:一旦配置了镜像仓库,那么先前的所有配置都会转到镜像仓库中。 默认仓库位置.m2 repository,将settings.xml复制到更改后的本地仓库中,这样maven版本更新了,也不用修改settings.xml了查看全部
-
maven生命周期分为三个独立的生命周期(每一个生命周期有分为若干个阶段,其中defaul是最核心的一个): (1)clean 清理项目 (2)default 构建项目 (3)site 生成项目站点 1、clean 清理项目: pre-clean :执行清理前的工作 clean:清理上一次构建生成的所有文件 post-clean:执行清理后的文件 2、default构建项目(最核心) compile test package install 3、site 生成项目站点 pre-site 在生成项目站点之前要完成的工作 site 生成项目的站点文档 post-site在生成项目站点后要完成的工作 site-deploy发布生成的站点到服务器上 注意:Maven的生命周期对应的命令是顺序执行的,如果没有人为的顺序的一个个执行,那么Maven会默认的自动运行。查看全部
-
Maven创建目录的两种方式:(archetype自动创建目录骨架) 1.archetype:generate 按照提示进行选择。 2.archetype:generate -DgourpId=组织名,公司网址的反写+项目名称 -DartifactId=项目名-模块名 -Dversion=版本号 -Dpackage=代码所在的包名查看全部
举报
0/150
提交
取消