倭マン's BLOG

くだらない日々の日記書いてます。 たまにプログラミング関連の記事書いてます。 書いてます。

Eclipse -- その他のゴールや設定

前々回前回で、Eclipse プラグインの基本的な使い方を紹介しました。 今回は、その他のゴールや設定をご紹介。

Eclipse プロジェクト用のファイルを削除する


前々回、コマンド「mvn eclipse:eclipse」によって Eclipse プロジェクトのための設定ファイルが生成されることを見ました。 これとは逆に、Eclipse プロジェクト用の設定ファイルのみを削除したい場合は、

mvn eclipse:clean

を実行してください。 「.project」「.classpath」「.wtpmodules」に加え、Eclispe プロジェクトごとの設定を記述した「.settings」フォルダも削除されます。

ソース・コードや JavaDoc をダウンロードする


3rd パーティ製のライブラリを依存関係に含めて開発を行う場合、コーディング中には JavaDoc が、デバッグ中にはソース・コードがあれば便利です。 これらが Maven2 のリモート・リポジトリ上にあれば、それを自動的にダウンロードするように設定することが出来ます。

ただし、常にこれらのダウンロードをするように設定しておくと、POM ファイルを編集したり依存性を追加したりした際にこれらをダウンロードしようとするらしいです。

コマンド・プロンプトからの設定

Eclipse プロジェクト用の設定ファイルを生成する際に、幾つかオプションを付加します:

mvn eclipse:eclipse -DdownloadSources=true -DdownloadJavadocs=true

POM ファイルからの設定

同様のことを、POM ファイルの設定によって行うことも出来ます:

<?xml version="1.0"?>
<project>
  ...
  <build>
    <plugins>
      <plugin>
        <artifactId>maven-eclipse-plugin</artifactId>
        <configuration>
          <downloadSources>true</downloadSources>
          <downloadJavadocs>true</downloadJavadocs>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

この場合、「mvn eclipse:eclipse」コマンドによって Eclipse プラグイン用の設定ファイルを生成すれば、上記と同様のことが出来ます。

Project Nature, Build Commands の設定


通常は余り使わないかと思いますが、POM ファイルの設定によって、Eclipse プロジェクトの "Project Nature" と "Build Command" を変更することが出来ます。 これらの設定は、Eclipse プロジェクトの設定ファイル「.project」に反映される模様。 設定の仕方は、「上書き」する方法と、「付け加える」方法があります。

「上書き」する方法

<?xml version="1.0"?>
<project>
  ...
  <build>
    <plugins>
      <plugin>
        <artifactId>maven-eclipse-plugin</artifactId>
        <configuration>
          <projectnatures>
            <projectnature>my.own.project.nature</projectnature>
          </projectnatures>
          <buildcommands>
            <buildcommand>my.own.build.command</buildcommand>
          </buildcommands>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

「付け加える」方法

<?xml version="1.0"?>
<project>
  ...
  <build>
    <plugins>
      <plugin>
        <artifactId>maven-eclipse-plugin</artifactId>
        <configuration>
          <additionalProjectnatures>
            <projectnature>org.springframework.ide.eclipse.core.springnature</projectnature>
          </additionalProjectnatures>
          <additionalBuildcommands>
            <buildcommand>org.springframework.ide.eclipse.core.springbuilder</buildcommand>
          </additionalBuildcommands>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>