複数のソースディレクトリを持つMavenプロジェクト
1. 前書き
Javaプロジェクトで複数のソースディレクトリを使用する必要がある場合があります。 自動的に生成され、別のディレクトリに配置されるクラスがある場合の一般的なケースの例。
この短い記事では、set up Maven to work with additional source directoriesを実行する方法を示します。
2. 別のソースディレクトリの追加
Mavenプロジェクトがすでに作成されていると仮定して、src/mainフォルダーにanother-srcという名前の新しいソースディレクトリを追加しましょう。
その後、このフォルダ内に簡単なJavaクラスを作成しましょう。
public class Foo {
public static String foo() {
return "foo";
}
}
次に、作成したばかりのFooクラスを使用する別のクラスをsrc/main/javaディレクトリに作成しましょう。
public class MultipleSrcFolders {
public static void callFoo() {
Foo.foo();
}
}
プロジェクトの構造は次のようになります。
Fooクラスがプロジェクトに含まれていないため、If we try to compile this project with Maven we get a compilation error:
[ERROR] .../MultipleSrcFolders.java:[6,9] cannot find symbol
[ERROR] symbol: variable Foo
[ERROR] location: class com.example.maven.plugins.MultipleSrcFolders
3. Builder Helperプラグインの使用
Mavenでは、Builder Helperプラグインを使用してソースディレクトリを追加できます。 このプラグインを使用すると、ビルドライフサイクルをさまざまな方法でカスタマイズできます。
その目標の1つはadd-sourcesです。これは、generate-sourcesフェーズ中にプロジェクトにさらにsrcディレクトリを追加することを目的としています。
pom.xmlに追加することで、プロジェクトで使用できます。
org.codehaus.mojo
build-helper-maven-plugin
3.0.0
generate-sources
add-source
プラグインの最新バージョンはMaven Centralにあります。
プロジェクトをコンパイルすると、ビルドは成功します。
4. 結論
この記事では、Mavenプロジェクトで複数のsrcディレクトリを操作するようにBuilder HelperMavenプラグインを設定する方法を説明しました。
いつものように、例の完全なソースコードはover on GitHubで入手できます。