LoginSignup
49
54

More than 5 years have passed since last update.

EclipseでMavenプロジェクトを作ってGithubで管理

Posted at

EclipseにおけるMavenの導入法、および簡単なWebアプリプロジェクトを作って動作確認。折角なのでコードはGithubで管理してみましょう、という記事です。
お恥ずかしながらこの手のツールチェインは殆ど実開発PJで利用したことはありません。いつまでも慣れたやり方にとらわれてはいけませんね、ということで気合を入れて入門していきたいところです。

環境

  • IDE:Eclipse 4.3 (Kepler)
    • ソース管理: GitHub
    • ビルド自動化: Maven (3.1.1)

前提

以下が終わっている前提で話を進めています。

  1. GitHubアカウント登録とSSH公開鍵設定 - 参考サイト
  2. Mavenのインストール - 参考サイト
  3. Eclipseのインストール
    • こちらのサイトからバージョン4.3.xのJava EE Developers向けのリリースをインストールします。

Eclipseに関連プラグインをインストール

Help > Eclipse Marketplace でキーワード検索して Install するだけでOKです。

  • Mavenプラグイン (m2e)
  • Gitプラグイン (EGit)

GitHubにレポジトリを作る

GitHubにログインし、公開レポジトリを作成します。
今回は適当に「maven_webapptmpl」ってな感じにして空のレポジトリを作成しました。

m2e設定

  1. Preferences > Maven と進んで畳み込みメニューを展開します。
  2. Installentions で使用したいMavenインストールを追加して選択します。 Global settings で指定したインストールのsettings.xmlが選択されていることを確認します。
  3. User Settings でユーザ設定ファイルを選択します。上記Global settingsファイルと同じでもOKです。

EGit設定

  1. Window > Open Perspective > Git の順に選択してパースペクティブを開きます。
  2. Clone Git Repository から先ほど作成した「maven_webapptmpl.git」レポジトリをクローンします。プロトコルは「https」です。 Authentication にはGitHubアカウントの認証情報を記入します。
  3. Finishでリモートリポジトリが正常にCloneされれば完了です。

Maven Webアプリプロジェクトを作る

プロジェクトの新規作成

Maven Webアプリプロジェクトを作ります。ウイザードが開くので、適宜選択していけばOKです。

  1. Project Explorer で右クリック > New から Maven Project を探してクリック
  2. Use default Workspace location にチェックが入っていることを確認してNext >をクリック
  3. Artifact Idmaven-archetype-webapp のものを選択してNext >をクリック
  4. 任意の Group IdArtifact Id (今回はwebappsampleとしました) 、 Version および Package を入力してFinishをクリック

pom.xmlの編集

この状態でビルドを行えばWARファイルを作ってくれます。

プロジェクトの文字コードをUTF-8に

プラットフォームローカルの文字コードを使っているとそのプラットフォーム依存なプロジェクトになってしまいます(実際Mavenビルドを行うと以下のようなWarningが出ます)。

Warning
Sun Dec 01 15:04:47 JST 2013
Using platform encoding (US-ASCII actually) to copy filtered resources, i.e. build is platform dependent!

pom.xmlに明示的にプロジェクトの文字コードを指定することで回避できます。

pom.xml
<project>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
</project>

Jettyプラグインでローカル動作確認

ビルドしたWARファイルをどこかのWebアプリケーションコンテナにデプロイして動作確認してもいいのですが、MavenのJettyプラグインを使えばEclipseから直接動作確認できます。これもpom.xmlで指定します。

pom.xml
  <build>
    <finalName>webappsample</finalName>
    <plugins>
        <plugin>
            <groupId>org.mortbay.jetty</groupId>
            <artifactId>maven-jetty-plugin</artifactId>
            <version>6.1.17</version>
        </plugin>
    </plugins>
  </build>

ビルドと動作確認

ちょっとソースを弄ってJettyプラグインで動作確認してみます。

  1. /src/main/webapp/index.jspを適当に編集して保存(そのままでもいいです)。
  2. Project Explorer 上のMavenプロジェクトを右クリック > Run as から Maven Build を選択します。
  3. Goals に「install」を記入してRunをクリックします。自動で依存プラグインのインストールとコンパイルが行われます。 /target ディレクトリ内にwarファイルができていればOKです。
  4. Project Explorer 上のMavenプロジェクトを右クリック > Run as > Run Configurations を選択します。
  5. Goals に「jetty:run」と記入してRunをクリックします。
  6. http://localhost:8080/webappsampleにアクセスします。意図した通りのIndex画面が表示されれば動作確認完了です。

プロジェクトをGithubにpush

  1. Project Explorer 上のMavenプロジェクトを右クリック > Team から Share Project を選択します。
  2. Git が選択できるはずですので、選択してNext >をクリックします。
  3. Repository から先ほどクローンしてきたローカルレポジトリを選択して、Finishを選択します。
  4. この時点では変更はコミットされていません。 Project Explorer 上のMavenプロジェクトを右クリック > Team から Commit を選択します。コミットメッセージを入力し、コミットするファイルを選択して Commit をクリックします。これでステージングが完了しました。
  5. リモートリポジトリ(GitHub)にpushします。 Project Explorer 上のMavenプロジェクトを右クリック > Team から Push to Upstream を選択します。特に問題なければGithubのリポジトリにプロジェクトがpushされたことが確認出来ると思います。

終わりに

今回はここまでです。
次回はこのWebアプリケーションをローカルのCloud Foundry環境にデプロイして実行してみます。

49
54
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
49
54