7.1. Blankプロジェクトから新規プロジェクト作成¶
Caution
本バージョンの内容は既に古くなっています。最新のガイドラインはこちらからご参照ください。
Blankプロジェクトからの新規プロジェクトを作成する方法を説明する。
- 前提
- Spring Tool Suite が動作可能なこと。
- Mavenをコマンドラインでで実行可能なこと。
- インターネットに接続できること。
この節の内容は以下のバージョンで動作確認している。
Product | Version |
---|---|
JDK | 1.7.0_40 |
Spring Tool Suite (STS) | 3.4.0 |
Maven | 3.0.4 |
Note
インターネット接続するために、プロキシサーバーを介する必要がある場合、 以下の作業を行うため、STSのProxy設定と、 MavenのProxy設定が必要である。
7.1.1. 新規プロジェクト作成¶
プロジェクトフォルダにコマンドプロンプトで移動する。
ここではSTSのworkspaceに移動する。
$ cd C:\springsource\sts-3.4.0.RELEASE\workspace
Maven archetypeを利用してプロジェクトの雛形を生成する
$ mvn archetype:generate -DarchetypeCatalog=http://repo.terasoluna.org/nexus/content/repositories/terasoluna-gfw-releases # <== (1) [INFO] Scanning for projects... [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building Maven Stub Project (No POM) 1 [INFO] ------------------------------------------------------------------------ [INFO] [INFO] >>> maven-archetype-plugin:2.2:generate (default-cli) @ standalone-pom >>> [INFO] [INFO] <<< maven-archetype-plugin:2.2:generate (default-cli) @ standalone-pom <<< [INFO] [INFO] --- maven-archetype-plugin:2.2:generate (default-cli) @ standalone-pom --- [INFO] Generating project in Interactive mode [INFO] No archetype defined. Using maven-archetype-quickstart (org.apache.maven.archetypes:maven-archetype-quickstart:1.0) Choose archetype: 1: http://repo.terasoluna.org/nexus/content/repositories/terasoluna-gfw-releases -> org.terasoluna.gfw.blank:terasoluna-gfw-web-blank-archetype (Blank project using TERASOLUNA Global Framework) 2: http://repo.terasoluna.org/nexus/content/repositories/terasoluna-gfw-releases -> org.terasoluna.gfw.blank:terasoluna-gfw-web-blank-jpa-archetype (Blank project using TERASOLUNA Global Framework (JPA)) 3: http://repo.terasoluna.org/nexus/content/repositories/terasoluna-gfw-releases -> org.terasoluna.gfw.blank:terasoluna-gfw-web-blank-mybatis2-archetype (Blank project using TERASOLUNA Global Framework (MyBatis2)) Choose a number or apply filter (format: [groupId:]artifactId, case sensitive contains): : 1 # <== (2) Define value for property 'groupId': : example.first.application # <== (3) Define value for property 'artifactId': : example-first-application # <== (4) Define value for property 'version': 1.0-SNAPSHOT: : # <== (5) Define value for property 'package': example.first.application: : # <== (6) Confirm properties configuration: groupId: example.first.application artifactId: example-first-application version: 1.0-SNAPSHOT package: example.first.application Y: : # <== (7) [INFO] ---------------------------------------------------------------------------- [INFO] Using following parameters for creating project from Archetype: terasoluna-gfw-web-blank-archetype:1.0.0.RELEASE [INFO] ---------------------------------------------------------------------------- [INFO] Parameter: groupId, Value: example.first.application [INFO] Parameter: artifactId, Value: example-first-application [INFO] Parameter: version, Value: 1.0-SNAPSHOT [INFO] Parameter: package, Value: example.first.application [INFO] Parameter: packageInPathFormat, Value: example/first/application [INFO] Parameter: package, Value: example.first.application [INFO] Parameter: version, Value: 1.0-SNAPSHOT [INFO] Parameter: groupId, Value: example.first.application [INFO] Parameter: artifactId, Value: example-first-application [INFO] project created from Archetype in dir: C:\springsource\sts-3.4.0.RELEASE\workspace\example-first-application [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 44.809s [INFO] Finished at: Fri Dec 06 11:28:47 JST 2013 [INFO] Final Memory: 9M/23M [INFO] ------------------------------------------------------------------------
項番 説明 (1)Maven archetypeでプロジェクトを作成する。TERASOLUNA Global Frameworkのレポジトリを指定する。(2)取得するBlank Projectのtypeを指定する。1. JPA,MyBatis2は使用せずにプロジェクトを作成する場合2. JPAを使用するプロジェクトを作成する場合3. MyBatis2を使用するプロジェクトを作成する場合(3)groupIdを指定する。(4)artifactIdを指定する。(5)省略可。最新版を利用する場合は指定不要。(6)省略可。パッケージ名指定。groupIdと同じ場合は指定不要。(7)省略可。groupId,artifactId,version,packageが問題なければ、Enterで終了となる。Nを指定した場合は、(3)から再度入力となる。
Spring Tool Suiteにプロジェクトをインポートする。
アプリケーションサーバに作成したプロジェクトを追加する。
アプリケーションサーバを起動する。
起動したアプリケーションにアクセスする。
7.1.2. 簡単なEchoプロジェクトの作成¶
はじめてのSpring MVCアプリケーションで説明したエコーアプリケーションの作成と基本的には同じ手順となるため、ソースは割愛する。
はじめてのSpring MVCアプリケーションではspring-mvc.xmlの中で、<context:component-scan base-package="com.example.helloworld" />
を設定しているが、
がBlank Projectから作成した場合は<context:component-scan base-package="example.first.application.app" />
と設定される。
EchoController
はexample.first.application.app.echo
パッケージで作成すること。
Todo
TBD
今回はシングルプロジェクト構成での作成方法の説明をしているが、これは主に検証目的で使用されることを想定している。 実際にはマルチプロジェクト構成でプロジェクトを構築する必要がある。 マルチプロジェクト構成での作成方法は今後追記する。
Warning
Blankプロジェクトのpom.xmlに定義されている、以下の設定用はサンプルアプリケーションを簡単試すためのものであり、実際の開発で使用されることを想定していない。 実際のプロジェクトでは削除すること。
<dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <version>1.3.172</version> <scope>compile</scope> </dependency>