5

他のプロジェクトにいくつかの依存関係があるプロジェクトがあります。

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>group1</groupId>
<artifactId>artifact1<artifactId>
<name>RealtyRegistry</name>
<packaging>war</packaging>
<version>1.0.0-SNAPSHOT</version>
<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
    <dependency>
        <groupId>group1</groupId>
        <artifactId>artifact2</artifactId>
        <version>1.0.0</version>
    </dependency>
    <dependency>
        <groupId>group1</groupId>
        <artifactId>artifact3</artifactId>
        <version>1.0.0</version>
    </dependency>
</dependencies>

それらはすべて私が同時に開発したものです。すべてのプロジェクトのファイルにエディションを追加し、メイン プロジェクトと依存プロジェクトを一緒にビルドする必要があります。ツリー構造のないプロジェクトでそれを行う方法は?

プロジェクト階層には 2 つ以上のカバー ツリーが存在する場合があります。たとえば、A は B、C に依存します。D は C、E に依存します。AとDは独立しています。

4

1 に答える 1

6

「モジュール」を使用して、複数のプロジェクトをまとめて構築できます。通常、タグを使用して「マザー」プロジェクトを作成し<packaging>pom</packaging>、実際のプロジェクトをモジュールとして追加することでこれを行います。<modules>次に、「マザー」プロジェクトをビルドすると、すべてのモジュールが正しい順序で自動的にビルドされます。

以下は、Maven by Example本の例です。

<groupId>org.sonatype.mavenbook.multi</groupId>
<artifactId>simple-parent</artifactId>
<version>1.0</version>
<packaging>pom</packaging>

<modules>
    <module>simple-weather</module>
    <module>simple-webapp</module>
</modules>

これには、それに応じて名前が付けられたサブフォルダーにモジュールを配置する必要があることに注意してください。たとえば、いくつかのフォルダーに「母」pom があります。

/.../my-project/

およびモジュールは次のとおりです。

/.../my-project/simple-weather/
/.../my-project/simple-webapp/

詳細については、第 6 章を参照してください。この本のマルチモジュール プロジェクトは、Sonatype Web サイトで無料で入手できます。

于 2012-11-02T13:47:16.953 に答える