logdown博文地址
不得不说,时间过得还真挺快的,两个月的时间一下过去了,向日葵也从小小的瓜子长到了40厘米高。前些天我给向日葵松土时候发现,两株向日葵的根已经纠缠到了一块。最早我预想的是等他们长大后就立马迁移让他们分开成长,但是过程中各种原因,一直把这个事情搁置着,最后酿成这样的结果。
我只好强行将他们分开,当然扯断了一些根,希望没有伤害到他们。迁移完之后还连下了好多天的雨,没有阳光呵护,真不知道他们是否能度过难关。
Late equals never,很多事情都是拖延就代表不做,一拖再拖,只有等问题主动暴露的时候,才亡羊补牢。生活中处处都需要主动的去跟踪问题发现问题,项目管理中更是。由于我最近琐事繁多,所以也都把问题暴露过于依赖在每天早上的站会上,这样会导致隔了一个晚上,问题已经暴露的过晚了,甚至很多问题就被遗忘了。因此,我觉得最好的方式应该是每天快下班的时候跟踪下今天各自的任务是否完成,未完成的是任务延后还是赶工(你没猜错,就是加班,说的好听点才特么叫赶工)处理。
------------分割线-------------
1 约定
1.1 约定优于配置
想要灵活那必然会增加复杂度,因此,Maven中基本都是使用约定的方式来完成。Maven提倡的是约定优于配置。
个人不是很喜欢这种约束,也不是为了耍个性,就像java用强制类型来增加语法的规范性,但是这就导致了java语言的局限性,类型不匹配连编译都过不了,更别说动态什么的了。
<build>
<directory>${project.basedir}/target</directory>
<outputDirectory>${project.build.directory}/classes</outputDirectory>
<finalName>${project.artifactId}-${project.version}</finalName>
<testOutputDirectory>${project.build.directory}/test-classes</testOutputDirectory>
<sourceDirectory>${project.basedir}/src/main/java</sourceDirectory>
<scriptSourceDirectory>src/main/scripts</scriptSourceDirectory>
<testSourceDirectory>${project.basedir}/src/test/java</testSourceDirectory>
……
</build>
这里就不对每个属性做过多介绍了,我相信大家也都看得懂意思。
这些都是约定的目录,当然也可以在每个项目的pom.xml中覆写来改变位置。除了这些,还有默认打包方式是jar(如果要打包war,就需要在pom.xml中指定),中央仓库的地址等等。
1.2 超级POM
对于Maven3,该文件的地址为:%MAVEN_HOME%\apache-maven-3.0.5\lib\maven-model-builder-3.0.5.jar\org\apache\maven\model\pom-4.0.0.xml,有兴趣的可以自己把这个pom翻出来看,但是不是很建议修改,这样你可以构建的maven项目,在别人机器上就无法构建了。
[INFO] Scanning for projects...
[INFO] ----------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] Account Parent
[INFO] Account Email
[INFO] Account Persist
[INFO] Account Captcha
[INFO] Account Service
[INFO] Account Web
2 反应堆
在一堆项目中,反应堆就是构建结构。所以对于单模块来说,反应堆就是他本身。
反应堆应当包括各模块之间继承和依赖的关系,从而自动计算出合理的模块构建顺序。
2.1 构建顺序
两个原则:
- 无依赖的按pom的读取顺序;
- 有依赖的优先构建较深层次的依赖。
2.2 裁剪反应堆
2.2.1 指定构建模块
可以通过以下命令指定构建某几个模块
mvn clean install –pl account-email,account-persist
2.2.2 构建所列模块的依赖模块
mvn clean install –pl account-email –am
控制台信息
C:\Users\x\Desktop\recent note of study\Maven\源码\ch-10\account-parent>mvn clean install -pl account-email -am
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] Account Parent
[INFO] Account Email
[INFO]
2.2.3 构建依赖于所列模块的模块
mvn clean install –pl account-parent –amd
2.2.4 指定从何处开始构建
指定从所列模块开始构建其后的模块。
mvn clean install –rf account-parent
2.2.5 裁剪后再裁剪
mvn clean install –pl account-parent –amd –rf account-email
分享到:
相关推荐
mybatis-plus-generator-maven-plugin-v1.0.0依赖的pom.xml,用于mybatis-plus-generator-maven-plugin-1.0.0.jar本地仓库上传时依赖使用
apache-maven-3.6.3-bin。apache-maven-3.6.3-bin。apache-maven-3.6.3-bin。apache-maven-3.6.3-bin。apache-maven-3.6.3-bin。apache-maven-3.6.3-bin。apache-maven-3.6.3-bin。apache-maven-3.6.3-bin。apache-...
首先,你需要下载`apache-maven-3.6.0`压缩包。这个压缩包包含了Maven运行所需的所有文件,包括bin目录下的可执行脚本,lib目录中的依赖库,以及conf目录下的配置文件如settings.xml。下载完成后,解压到你选择的...
为了在项目中快捷方便的代码生成,将mybatis-plus-generator封装为了一个maven的插件`mybatis-plus-generator-maven-plugin。使用文档参考:https://blog.csdn.net/xiweiller/article/details/103072165
本项目是基于Java的smart-doc-maven-plugin官方maven插件设计源码,包含43个文件,其中包括27个Java源文件、7个Markdown文档、2个JSON文件、1个gitignore文件、1个LICENSE...-documentation文件和1个licenses/LICENSE...
jeecg-3.5.1-eclipse-非maven版本jeecg-3.5.1-eclipse-非maven版本jeecg-3.5.1-eclipse-非maven版本jeecg-3.5.1-eclipse-非maven版本jeecg-3.5.1-eclipse-非maven版本jeecg-3.5.1-eclipse-非maven版本jeecg-3.5.1-...
apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-...
apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-...
maven-aether-provider-3.2.1-sources.jar maven-antrun-plugin-1.3.jar maven-archiver-2.2.jar maven-artifact-3.2.1-sources.jar maven-assembly-plugin-2.2-beta-5.jar maven-bundle-plugin-1.0.0.jar maven-...
apache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9....
Scala Maven 插件 scala-maven-plugin (以前是 maven-scala-plugin)用于在 Maven 中编译/测试/运行/记录 Scala 代码。类似插件 建造目前,您需要 Maven 3.x 和 JDK 8 来构建插件、创建站点并运行integration-test ...
apache-maven-3.0.5 apache-maven-3.1.1 apache-maven-3.2.5 apache-maven-3.3.9 apache-maven-3.5.4 apache-maven-3.6.3 apache-maven-3.8.5 每个版本包含4个文件: apache-maven-3.8.5-bin.tar.gz apache-maven-...
apache-maven-3.8.5(含windows和linux版本).zip包含如下内容: apache-maven-3.8.5-bin.tar.gz; apache-maven-3.8.5-bin.zip; apache-maven-3.8.5-src.tar.gz; apache-maven-3.8.5-src.zip; maven安装说明.txt...
apache-maven-3.9.4(含windows和linux版本).zip包含如下内容: apache-maven-3.9.4-bin.tar.gz apache-maven-3.9.4-bin.zip apache-maven-3.9.4-src.tar.gz apache-maven-3.9.4-src.zip maven安装说明.txt maven...
这两个压缩包,“apache-maven-3.5.4-bin”和“apache-maven-3.3.9-bin”,分别代表了Maven的两个不同版本。 1. **Maven 3.5.4**: Maven 3.5.4是Maven的一个稳定版本,发布于2018年。这个版本包含了多项改进和...
apache-maven-3.8.4(含windows和linux版本).zip包含如下内容: apache-maven-3.8.4-bin.tar.gz; apache-maven-3.8.4-bin.zip; apache-maven-3.8.4-src.tar.gz; apache-maven-3.8.4-src.zip; maven安装说明.txt...
打开并输入:path= D:/Development/eclipse-JavaEE/eclipse/plugins/maven(请参照上面对应你的 maven 插件) 4. 重启 eclipse,OK,完成了,启动后你打开Window ---> Preferences 会发现一个多了一个选项Maven...
本文详细介绍了exec-maven-plugin的基本概念、配置方法、执行简单和系统脚本、捕获命令输出、条件执行、并发执行、使用环境变量、错误处理、高级配置、使用案例以及局限性。通过这些知识点,读者可以更加自信地在...
9. **maven-artifact-manager** 和 **maven-repository-metadata**:这两个模块处理与Maven仓库的交互,包括本地和远程仓库的元数据管理。 10. **maven-plugin-api** 和 **maven-plugin-registry**:提供API和接口...
apache-maven-3.8.6(含windows和linux版本).zip包含如下内容: apache-maven-3.8.6-bin.tar.gz; apache-maven-3.8.6-bin.zip; apache-maven-3.8.6-src.tar.gz; apache-maven-3.8.6-src.zip; maven安装说明.txt...