Maven は強力なビルド自動化ツールとして広く知られていますが、それだけではありません。これは、ビルド プロセス全体、依存関係の管理、ドキュメントの生成を簡素化する包括的なプロジェクト管理ツールです。この投稿では、Maven のさまざまな側面を調査し、その機能を詳しく理解します。
Maven の主な機能
1.ビルド生成
2.依存関係管理
3.ドキュメント
mvn build や mvndeploy などのコマンドを実行すると、Maven はすべての設定を含む pom.xml ファイルを調べ、それに応じて動作します。 pom.xml の構造とその重要性をさらに詳しく見てみましょう。
POM ファイル
```
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
com.example my-app 1.0-SNAPSHOT jar 1.8 1.8 5.2.8.RELEASE org.springframework spring-core ${spring.version} org.springframework spring-context ${spring.version} junit junit 4.12 test org.apache.maven.plugins maven-compiler-plugin 3.8.1 ${maven.compiler.target} org.apache.maven.plugins maven-surefire-plugin 2.22.2 central https://repo.maven.apache.org/maven2 releases http://repo.mycompany.com/releases snapshots http://repo.mycompany.com/snapshots
POM ファイルをデコードしましょう:
**pom.xml のファイルは特定の XML スキーマ (xsi:schemaLocation: で定義) に従い、Maven が検証する正しい構造に準拠していることが保証されます。以下に例を示します:
重要な要素:
親 POM:
Spring Boot の各 POM ファイルには親 POM があります。親が定義されていない場合は、スーパー POM が親になります。
GroupId、ArtifactId、およびバージョン:
これらの要素は、Maven Central 内のプロジェクトを一意に識別します。
com.example my-app 1.0-SNAPSHOT jar
- 1.8
central https://repo.maven.apache.org/maven2
依存関係: プロジェクトの依存関係をリストします。
org.springframework.boot spring-boot-starter-web 2.3.4.RELEASE
Maven ビルド ライフ サイクル
Maven は、いくつかのフェーズで構成される特定のビルド ライフサイクルに従います:
検証:
プロジェクト構造を検証します。
コンパイル:
Java コードをバイトコード (.class ファイル) に変換し、target/ フォルダーに配置します。
テスト:
test/ ディレクトリにあるテスト ケースを実行します。
パッケージ:
コンパイルされたバイトコードから JAR/WAR ファイルを生成し、target/ フォルダーに保存します。
確認する:
パッケージの整合性をチェックします。
インストール:
パッケージをローカル リポジトリにインストールします。
展開する:
パッケージをリモート リポジトリにアップロードします。
ビルド プロセスのカスタマイズ:
Maven は、要素を通じて各フェーズに特定の目標を追加する柔軟性を提供します。プラグインを作成して使用して、Maven の機能を拡張することもできます。
org.apache.maven.plugins maven-compiler-plugin 3.8.1 1.8
*Maven でインストール: *
テスト、パッケージ化、検証が完了した後、コンパイル段階で作成した jar ファイルをインストールします。
ここでは、すべての依存関係が保存される m2 フォルダーが作成されます。このフォルダーの場所は、
Maven を使用したデプロイ
デプロイメント構成は要素内で指定されます。
internal.repo http://repo.mycompany.com/maven2
ヒント: .m2/repository フォルダー内の settings.xml で資格情報を指定できます。
Maven を常に最新の状態に保ち、そのニュアンスをマスターすると、プロジェクト管理が大幅に強化され、自動化スキルが構築されます。 Maven は単なるビルド ツールではなく、プロジェクトのコマンド センターであることを忘れないでください。深く掘り下げて新しいプラグインを探索し、実験を続けてください。 Maven を活用すればするほど、開発プロセスはより強力になります。限界を押し広げ続けて、残りは Maven に任せましょう。結局のところ、それはプロジェクト管理のニーズに応えるスイス アーミー ナイフを持っているようなものです!
お読みいただきありがとうございます。貴重なご意見をお待ちしております。
また、素晴らしいプラグインを見つけたら、コメント欄で教えてください。
「いいね!」、共有、購読することを忘れないでください。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3