Mavenのサプリメント

Mavenの設計思想は、設定より規約(構成前大会まで)で、この記事では、あなたは以下の5つの技術的な詳細を学びます、これらの要素は、私は最近のインタビューで候補者を尋ねます。

差達人きれいなパッケージには、インストール、展開します

Mavenのライフサイクル

Mavenの一般的なプラグイン

Gitlabランナー結合MavenはCI / CDユニットテストを実行しました

Mavenは除外を頼ります

まず、差分達人きれいなパッケージには、インストール、展開します

千個の言葉の価値が腕時計、周期表の人生

9930763-d97056a5c12c0dad

メニュー

9930763-5919f963b8231167

MVNインストールを使用して、新しいコンテンツ変更が反映されない場合は、クリーンを有効にするには、インストールMVNを使用してください

説明をプラグ:

Mavenの戦争 - プラグインプロジェクトは、戦争にパッケージ化されます、のmaven-jarファイル・プラグインプロジェクトをjarファイルにパッケージ化されます

Mavenはインストール・プラグインを築くだろう戦争パッケージをローカルに開発環境のMavenリポジトリの。

二、Mavenのライフサイクル

Mavenのライフサイクルは全てれるビルドプロセスの抽象化と統一されたが、プロジェクトに含まクリーンアップするために、初期設定、コンパイル、テスト、パッケージ、統合テスト、検証、展開を、サイトが生成など、ほぼすべてのプロセスのを(コンパイルに減少させることができる- > [テスト- >包装- >展開)。ほとんどすべての建設プロジェクトは、ライフサイクルにマッピングすることができます。

Mavenのは、独立したライフサイクルの3セットがあり、あるクリーン(クリーンアッププロジェクト)、デフォルト(建築プロジェクト)とサイト(プロジェクトサイトを確立する)、各ユーザーが唯一のライフサイクルの各段階をきれいに呼び出すことができます。

(A)クリーンライフサイクル

此周期的目的是清理项目,它包含三个阶段:

(1)pre-clean:执行一些需要在clean之前完成的工作

(2)clean:移除所有上一次构建生成的文件

(3)post-clean:执行一些需要在clean之后立刻完成的工作

9930763-6aaf274df1f6966e

(二)default生命周期

最核心的生命周期,构建的核心部分,编译,测试,打包,部署等等。它包含的阶段如下:

初始化、编译、测试、打包、集成测试、验证、部署

1) validate 验证项目是否正确和所有需要的相关资源是否可用

2) initialize 初始化构建

3) generate-sources

4)   process-sources 处理源代码

5) generate-resources 

6)   process-resources 处理项目主资源文件。对src/main/resources目录的内容进行变量替换等工作后,复制到项目输出的主classpath目录中

7) compile 编译项目的主源代码

8) process-classes

9)   generate-test-sources

10) process-test-sources 处理项目测试资源文件

11)generate-test-resources

12)  process-test-resources 处理测试的资源文件

13)test-compile 编译项目的测试代码

14)process-test-classes

15)  test 使用单元测试框架运行测试,测试代码不会被打包或部署

16)prepare-package 做好打包的准备

17)package 接受编译好的代码,打包成可发布的格式

18)  pre-integration-test

19)  integration-test

20)  postintegration-test

21)  verify

22)  install 将包安装到Maven本地仓库,供本地其他Maven项目使用

23)deploy 将最终的包复制到远程仓库,供其他开发人员和Maven项目使用

(三)site生命周期

site生命周期的目的是建立和发布项目站点,Maven能够基于POM所包含的信息,自动生成一个友好的站点,方便团队交流和发布项目信息。该生命周期包含如下阶段:

1)pre-site 执行一些在生成项目站点之前需要完成的工作

2)site 生成项目站点文档

3)post-site 执行一些在生成项目站点之后需要完成的工作

4)site-deploy 将生成的项目站点发布到服务器上

三、Maven常用插件

9930763-19f39908419f17ef
9930763-18b7785523f64ae5

clean插件maven-clean-plugin

resources插件maven-resources-plugin

compile插件maven-compiler-plugin

单元测试插件maven-surefire-plugin

打包插件maven-jar-plugin、maven-war-plugin、maven-assembly-plugin、maven-shade-plugin

发布插件maven-install-plugin 

四、maven结合Gitlab Runner执行CI/CD单元测试

Gitlab 除了基本的版本管理功能之外,还有持续集成能力,在项目根目录中编写一段 .gitlab-ci.yml,就能让 Gitlab 按照其中的指示完成持续集成的工作

Gitlab CI/CD 是 Gitlab 的组件,它利用 Gitlab Runner 来执行具体的构建任务

具体创建Maven 的 Runner的方式可以参照这篇文章:使用 Maven 运行单元测试

ます。https://www.jianshu.com/p/8baad23e7307で再現

おすすめ

転載: blog.csdn.net/weixin_33953384/article/details/91242744