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種類を用意している。
本ガイドラインでは、マルチプロジェクト構成のプロジェクトを使用する事を推奨している。 |
|
POC(Proof Of Concept)、プロトタイプ、サンプルなどの簡易的なアプリケーションを作成する際に使用する。 プロジェクトの雛形は、MavenのArchetypeとして、以下の4種類を用意している。 (EclipseのWTP用のプロジェクトも用意しているが、本節では説明は割愛する)
本ガイドラインでは、各種チュートリアルをシングルプロジェクトを使用して行う手順となっている。 |
7.3.4. マルチプロジェクト構成のプロジェクト作成¶
マルチプロジェクト構成のプロジェクトを作成する方法については、 「Webアプリケーション向け開発プロジェクトの作成」を参照されたい。
上記のドキュメントには、以下のコンテンツが含まれている。
- マルチプロジェクト構成のプロジェクトを作成する方法
- warファイルのビルド方法
- ブランクプロジェクトからのカスタマイズ箇所の説明
- プロジェクト構成の説明
7.3.5. シングルプロジェクト構成のプロジェクト作成¶
シングルプロジェクト構成のプロジェクトを作成する方法について説明する。
まず、プロジェクトを作成するフォルダに移動する。
cd C:\work
Maven Archetype Plugin の archetype: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を指定する。
上記例では、 |
-DarchetypeVersion
|
ブランクプロジェクトのバージョンを指定する。(固定) |
-DgroupId
|
作成するプロジェクトのgroupIdを指定する。(カスタマイズが必要) 上記例では、 |
-DartifactId
|
作成するプロジェクトのartifactIdを指定する。(カスタマイズが必要) 上記例では、 |
-Dversion
|
作成するプロジェクトのバージョンを指定する。(カスタマイズが必要) 上記例では、 |
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で作成したプロジェクトを選択するダイアログを開く。
Root Directoryに C:\work\todo
を設定し、Projectsにtodoのpom.xmlが選択された状態で、 [Finish] を押下する。
インポートが完了すると、Package Explorerに次のようなプロジェクトが表示される。
Note
インポート後にビルドエラーが発生する場合は、プロジェクト名を右クリックし、「Maven」->「Update Project…」をクリックし、 「OK」ボタンをクリックすることでエラーが解消されるケースがある。
Tip
パッケージの表示形式は、デフォルトは「Flat」だが、「Hierarchical」にしたほうが見通しがよい。
Package Explorerの「View Menu」 (右端の下矢印)をクリックし、「Package Presentation」->「Hierarchical」を選択する。
Package PresentationをHierarchicalにすると、以下の様な表示になる。
7.3.7. デプロイとアプリケーションサーバ(ts Server)の起動¶
STS上のアプリケーションサーバにプロジェクトをデプロイし、起動する方法について説明する。
Note
マルチプロジェクトの場合は、アプリケーション層(Web層)のコンポーネントを管理するプロジェクト(archetypeId-web)がデプロイ対象となる。
インポートしたプロジェクトを右クリックして「Run As」->「Run on Server」を選択する。
APサーバー(Pivotal tc Server Developer Edition v3.0)を選択し、「Next」をクリックする。
選択したプロジェクトが「Configured」に含まれていることを確認し、「Finish」をクリックしてサーバーを起動する。
Note
アプリケーションサーバの起動時にエラーが発生する場合は、以下に示すクリーン作業を行うと解決されるケースがある。
- プロジェクトのクリーンSTSのメニューから、[Project] -> [Clean…] を選択し、Cleanダイアログで対象を選択して「OK」ボタンを押下する。
- MavenのUpdate Project
- デプロイ済みリソースのクリーン「Servers」ビューの「tc Server」を右クリック -> [Clean…]
- アプリケーションサーバ(tc Server)のワークディレクトリのクリーン「Servers」ビューの「tc Server」を右クリック -> [Clean tc Server Work Directory…]
ブラウザで http://localhost:8080/todo にアクセスすると、以下のような画面が表示される。