7.3. ブランクプロジェクトから新規プロジェクトの作成

本節では、ブランクプロジェクトから新規プロジェクトを作成する方法を説明する。

7.3.1. 前提

本節で説明する内容は、以下の条件が整っていることを前提としている。 前提条件が整っていない場合は、まずこれらのセットアップを行ってほしい。

  • Spring Tool Suite が動作可能なこと。
  • Mavenをコマンドラインで実行可能なこと。
  • インターネットに接続できること。

Note

インターネット接続するために、プロキシサーバーを介する必要がある場合、 STSのProxy設定とMavenのProxy設定が必要である。


7.3.2. 検証環境

本節で説明する内容は、以下のバージョンで動作を確認している。

種別 名前
OS Windows 7
JVM Java 1.8
IDE Spring Tool Suite 3.6.4.RELEASE (以降「STS」と呼ぶ)
Build Tool Apache Maven 3.3.9 (以降「Maven」と呼ぶ)
Application Server Pivotal tc Server Developer Edition v3.1 (STSに同封)

7.3.3. ブランクプロジェクトの種類

ブランクプロジェクトは、使用用途に応じて以下の2種類を提供している。

種別 使用用途

商用環境にリリースするような本格的なアプリケーションを開発する際に使用する。

プロジェクトの雛形は、MavenのArchetypeとして、以下の3種類を用意している。

  • MyBatis3用の設定が盛り込まれた雛形
  • JPA(Spring Data JPA)用の設定が盛り込まれた雛形

本ガイドラインでは、マルチプロジェクト構成のプロジェクトを使用する事を推奨している。

POC(Proof Of Concept)、プロトタイプ、サンプルなどの簡易的なアプリケーションを作成する際に使用する。

プロジェクトの雛形は、MavenのArchetypeとして、以下の4種類を用意している。 (EclipseのWTP用のプロジェクトも用意しているが、本節では説明は割愛する)

  • MyBatis3用の設定が盛り込まれた雛形
  • JPA(Spring Data JPA)用の設定が盛り込まれた雛形
  • O/R Mapperに依存しない雛形

本ガイドラインでは、各種チュートリアルをシングルプロジェクトを使用して行う手順となっている。


7.3.4. マルチプロジェクト構成のプロジェクト作成

マルチプロジェクト構成のプロジェクトを作成する方法については、 「Webアプリケーション向け開発プロジェクトの作成」を参照されたい。

上記のドキュメントには、以下のコンテンツが含まれている。

  • マルチプロジェクト構成のプロジェクトを作成する方法
  • warファイルのビルド方法
  • ブランクプロジェクトからのカスタマイズ箇所の説明
  • プロジェクト構成の説明

7.3.5. シングルプロジェクト構成のプロジェクト作成

シングルプロジェクト構成のプロジェクトを作成する方法について説明する。

まず、プロジェクトを作成するフォルダに移動する。

cd C:\work

Maven Archetype Pluginarchetype:generate を使用して、プロジェクトを作成する。

mvn archetype:generate -B^
 -DarchetypeCatalog=http://repo.terasoluna.org/nexus/content/repositories/terasoluna-gfw-releases^
 -DarchetypeGroupId=org.terasoluna.gfw.blank^
 -DarchetypeArtifactId=terasoluna-gfw-web-blank-mybatis3-archetype^
 -DarchetypeVersion=5.1.1.RELEASE^
 -DgroupId=todo^
 -DartifactId=todo^
 -Dversion=1.0.0-SNAPSHOT
パラメータ 説明
-B
batch mode (対話を省略)
-DarchetypeCatalog
TERASOLUNA Server Framework for Java (5.x)のレポジトリを指定する。(固定)
-DarchetypeGroupId
ブランクプロジェクトのgroupIdを指定する。(固定)
-DarchetypeArtifactId

ブランクプロジェクトのarchetypeId(雛形を特定するためのID)を指定する。(カスタマイズが必要)

以下の何れかのarchetypeIdを指定する。

  • terasoluna-gfw-web-blank-mybatis3-archetype
    MyBatis3用の設定が盛り込まれた雛形
  • terasoluna-gfw-web-blank-jpa-archetype
    JPA(Spring Data JPA)用の設定が盛り込まれた雛形
  • terasoluna-gfw-web-blank-archetype
    O/R Mapperに依存しない雛形

上記例では、terasoluna-gfw-web-blank-mybatis3-archetypeを指定している。

-DarchetypeVersion
ブランクプロジェクトのバージョンを指定する。(固定)
-DgroupId

作成するプロジェクトのgroupIdを指定する。(カスタマイズが必要)

上記例では、"todo"を指定している。

-DartifactId

作成するプロジェクトのartifactIdを指定する。(カスタマイズが必要)

上記例では、"todo"を指定している。

-Dversion

作成するプロジェクトのバージョンを指定する。(カスタマイズが必要)

上記例では、"1.0.0-SNAPSHOT"を指定している。

Warning

ブランクプロジェクトのpom.xmlには、インメモリデータベース(H2 Database)への依存関係が指定されている。 これはちょっとした動作検証(プロトタイプ作成やPOC(Proof Of Concept))を行うための設定であり、実際の開発で使用することは想定していない。

<dependency>
    <groupId>com.h2database</groupId>
    <artifactId>h2</artifactId>
    <scope>runtime</scope>
</dependency>

H2 Databaseを使用しない場合は、この設定は削除すること。


7.3.6. IDE(STS)へのプロジェクトのインポート

作成したプロジェクトをSTSへインポートする方法について説明する。

Note

ここでは、シングルプロジェクトをインポートする例になっているが、マルチプロジェクトも同じ手順でインポート可能である。


STSのメニューから、[File] -> [Import] -> [Maven] -> [Existing Maven Projects] -> [Next]を選択し、archetypeで作成したプロジェクトを選択するダイアログを開く。

Open the dialog to import project

Root Directoryに C:\work\todoを設定し、Projectsにtodoのpom.xmlが選択された状態で、 [Finish] を押下する。

Import project

インポートが完了すると、Package Explorerに次のようなプロジェクトが表示される。

workspace

Note

インポート後にビルドエラーが発生する場合は、プロジェクト名を右クリックし、「Maven」->「Update Project…」をクリックし、 「OK」ボタンをクリックすることでエラーが解消されるケースがある。

../_images/CreateProjectFromBlankUpdateProject.png

Tip

パッケージの表示形式は、デフォルトは「Flat」だが、「Hierarchical」にしたほうが見通しがよい。

Package Explorerの「View Menu」 (右端の下矢印)をクリックし、「Package Presentation」->「Hierarchical」を選択する。

../_images/CreateProjectFromBlankPresentationHierarchical.png

Package PresentationをHierarchicalにすると、以下の様な表示になる。

../_images/CreateProjectFromBlankPresentationHierarchicalView.png

7.3.7. デプロイとアプリケーションサーバ(ts Server)の起動

STS上のアプリケーションサーバにプロジェクトをデプロイし、起動する方法について説明する。

Note

マルチプロジェクトの場合は、アプリケーション層(Web層)のコンポーネントを管理するプロジェクト(archetypeId-web)がデプロイ対象となる。


インポートしたプロジェクトを右クリックして「Run As」->「Run on Server」を選択する。

../_images/CreateProjectFromBlankRunOnServer.jpg

APサーバー(Pivotal tc Server Developer Edition v3.0)を選択し、「Next」をクリックする。

../_images/CreateProjectFromBlankTcServerNext.jpg

選択したプロジェクトが「Configured」に含まれていることを確認し、「Finish」をクリックしてサーバーを起動する。

../_images/CreateProjectFromBlankTcServerFinish.jpg

Note

アプリケーションサーバの起動時にエラーが発生する場合は、以下に示すクリーン作業を行うと解決されるケースがある。

  • プロジェクトのクリーン
    STSのメニューから、[Project] -> [Clean…] を選択し、Cleanダイアログで対象を選択して「OK」ボタンを押下する。
  • デプロイ済みリソースのクリーン
    「Servers」ビューの「tc Server」を右クリック -> [Clean…]
  • アプリケーションサーバ(tc Server)のワークディレクトリのクリーン
    「Servers」ビューの「tc Server」を右クリック -> [Clean tc Server Work Directory…]

ブラウザで http://localhost:8080/todo にアクセスすると、以下のような画面が表示される。

../_images/CreateProjectFromBlankTopPage.png