開発の始め方

Top > 開発の始め方 $Date: 2003/05/26 00:36:44 $ GMT SourceForge.jp

はじめに

このドキュメントは、開発メンバとして参加した方が実際に開発を始めるまでに行う準備作業の手順を説明しています。

ステップ

  1. 前提条件
  2. CVSアクセス環境の構築とチェックアウト
  3. Apache-Antのセットアップ
  4. MySQLのセットアップ
  5. JBossのセットアップ
  6. 環境設定ファイルの作成
  7. 設定プログラムの実行
  8. その他設定プログラムの実行
  9. システムのビルド
  10. 稼動確認

補足ドキュメント・インデックス

1. 前提条件

この手順を実行するための前提条件は以下の通りです。

2. CVSアクセス環境の構築とチェックアウト

2.1. CVSアクセス環境の構築

SourceForgeのソースコードに変更を加えるには、SSH経由でのCVSアクセスができるようにする必要があります。以下を参考に、CVSアクセス環境を構築してください。

PuTTYを使ったCVS利用法

うまく行かない場合、まずはPuTTYを使ってshells.sourceforge.jpにアクセスできること(ログインできること)を確認してください。また、pagent.exeを起動した状態にしておく必要があることに気を付けてください。

2.2. ソースコードのチェックアウト

CVSを使ってソースコードをダウンロードします。

■ CVSコマンドで取得する場合(Linux)
> export CVS_RSH=ssh 
> cvs -z3 -d:ext:developername@cvs.sourceforge.jp:/cvsroot/rumble-jp co rumble-jp
■ Eclipseで取得する場合(日本語化済みという前提で説明します)
  1. メインメニューの「ウィンドウ」→「パースペクティブを開く」→「その他」から「CVSリポジトリー・エクスプローラー」を選択
  2. 「CVSリポジトリー」ビューで右クリックし「新規」→「リポジトリー・ロケーション」で以下の情報を入力
    • ホスト : cvs.sourceforge.jp
    • リポジトリー・パス : /cvsroot/rumble-jp
    • ユーザー: ご自分のユーザ名
    • 接続型: ext
  3. 「CVSリポジトリー」ビューで「:ext:username@cvs.sourceforge.jp:/cvsroot/rumble-jp」→「HEAD」→「rumble-jp」を右クリックし、「プロジェクトとしてチェックアウト」を選択
以下の説明では、D:\workspace\rumble-jpにチェックアウトされたとして説明します。

2.3. コミットテスト

本プロジェクトのCVSリポジトリには、rumble-jpの他にtestというモジュールもあります。このモジュールはCVSへのコミットのテスト用です。上記の手順を参考にチェックアウトして、内部に含まれるcvstest.txtに変更してコミットしてみましょう。

コミットが成功するとrumble-jp-cvsメーリングリストにコミット通知メールが投稿されます。

以下にコミット手順を示します。「コミットメッセージ」には、日本語を使うとコミット通知メールが化けるので、Rumble-JPではローマ字、英語、または似非英語を使うルールになっています。

■ CVSコマンドによるコミット
(testディレクトリにて、)
> cvs -z3 -d:ext:developername@cvs.sourceforge.jp:/cvsroot/test commit -m "コミットメッセージ"
■ Eclipseによるコミット

パッケージエクスプローラでツリー上の任意のノードを右クリックし、「チーム」→「リポジトリーと同期化」を選択します。

※右クリックしたノード以下にある変更ファイルがコミットされますので、テストとしては「test」というプロジェクトノードを右クリックして同期化するとよいでしょう。

「リポジトリーと同期化」を選択すると、CVSにコミットされる予定のファイルがツリー表示されます。ここでもやはり任意のノードを右クリックし、「コミット」を選択します。コミットメッセージを入力して「OK」をクリックすると、コミットされます。

自分が変更している間に他の開発者が何かしらのファイルに変更を加え、コミットされていると、「リポジトリーと同期化」を選択したときにコミット予定ファイルではなく、「incomming change」(すいません日本語でどう表示されるか忘れました)が表示されます。このときは他の人の変更を自分のファイルに取り込んでからコミットします。

自分の変更と他の人の変更が競合しているとコンフリクトとして表示されますので、ダブルクリックしてdiff表示させ、ソースを見ながら他の人の変更を自分のファイルにマージしていきます。すべてマージしたらツリー表示の方で右クリックし、「mark as marged」(すいませんこれも日本語でどう表示されるか忘れました)を選択します。

3. Apache-Antのセットアップ

Apache-Antとは、Java向けに開発されたmakeに似たビルドツールです。Rumble-JPではVer1.5以上を前提としています。

  1. こちらからApache-AntのVer1.5以上を入手します。
  2. 圧縮ファイルを任意の場所に展開します。
  3. 環境変数ANT_HOMEに展開したディレクトリへのパスを追加します。
  4. PATHに<展開したディレクトリ>\binを追加しておきます。

4. MySQLのセットアップ

MySQLとはオープンソースのDBMSで、非常に高速であることと、世界的に導入実績が多いことで知られています。

ここではWindowsでの設定方法を簡単に説明します。ここでの説明と異なる設定を行いたいときは、「日本MySQLユーザ会」のドキュメントを参考にしてください。また、Linuxでの設定方法は以下を参考にしてください。

MySQLの設定(Linuxユーザ)

4.1. MySQLの入手

こちらからWindows版MySQLバイナリ(Ver3.23.55以上)を入手してください。

4.2. MySQLのインストール

  1. zipファイルを展開し、setup.exeを起動してインストールしてください。
    • インストールタイプ : Typical
    • インストール先 : C:\mysql
    としたとして進めます。インストール先を他のところにする場合、以下の手順は使えません。設定ファイルを自分で編集する必要がありますので、詳しくは「日本MySQLユーザ会」のドキュメントを参考にしてください。
  2. C:\mysql\bin\mysqld-maxをサービスとして登録します。
    C:\>cd c:\mysql\bin
    C:\mysql\bin>mysqld-max --install-manual
    Service successfully installed.
    
  3. C:\mysql\binにPATHを通します。
  4. C:\mysqlに"ibdata"と"iblogs"というディレクトリを作成します。
    C:\>cd mysql
    C:\mysql>mkdir ibdata
    C:\mysql>mkdir iblogs
    
  5. 設定ファイルをコピーします。
    CVSからチェックアウトしたディレクトリのsampleサブディレクトリに「my.cnf」という設定済みのファイルがありますので、Cドライブのルートにコピーしてください。
  6. MySQLを起動します。
    C:\>net start mysql
    MySql サービスを開始します.
    MySql サービスは正常に開始されました。
    
以上でMySQLの設定は終了です。

MySQLはサービスとして動作しますが、上記の設定方法ではマシンの起動時に自動的にMySQLも起動するようにはなっていません。マシンを起動するたびにnet start mysqlを実行してMySQLを起動する必要があります。

MySQLを自動的に起動するようにするには、上記のmysqld-max登録の際、以下のようにします。

C:\>cd c:\mysql\bin
C:\mysql\bin>mysqld-max --install
Service successfully installed.
ちなみに、すでに --install-manual してしまった人も、やり直せば問題ありません。

5. JBossのインストール

JBossとはオープンソースのEJBコンテナです。Rumble-JPではTomcatとバンドルされたものを利用します。

5.1. JBossの入手

こちらからJBoss-3.0.x_Tomcat-4.1.xを入手してください。現在稼動実績があるのはJBoss-3.0.6_Tomcat-4.1.18のみですが、3.0.7-4.1.24でも動くと思います。

5.2. インストール

任意のディレクトリに圧縮ファイルを展開してください。JBossのインストールは以上です。

6. 環境設定ファイルの作成

CVSチェックアウトしたディレクトリ直下に「.ant.properties」というファイルを置き、その中にすべての設定を書き込んで、開発環境および稼働環境の設定を生成します。

6.1. サンプルファイルのコピー

CVSからチェックアウトしたディレクトリ(rumble-jp)のsampleサブディレクトリに「.ant.properties」というファイルがあります。このファイルをrumble-jpディレクトリにコピーします。

6.2. 設定の書き込み

以下のように上記でコピーした「.ant.properties」ファイルを書き換えます。

※ユーザ登録機能を動かしてみるときは、登録確認メールの送信機能の設定をする必要があります。この際、使用するメールアドレス、POPサーバ、SMTPサーバはご自分のメールアカウント、メールサーバを記入してください。

######################################################################
# JDK

# Set the path to the jdk install directory.
java_home=C:/java/jdk1.4.1JDKをインストールしたディレクトリ

######################################################################
# JBoss

# Set the path to the runtime JBoss directory.
jboss.home=D:/jboss-3.0.6_tomcat-4.1.18JBossを展開したディレクトリ

##############################                   ↓以下はとりあえず書き換える必要なし
#MySQL connection setting.

# Hostname as running mysql database server.
mysql.host=localhost

# Database name to create and to use.
mysql.database=rumblejp

# Admin user name and password for creating database and tables. e.g. "root"
mysql.admin.user=root
mysql.admin.password=

# User name and password for connecting from JBoss
mysql.user=rumbleuser
mysql.password=robo


######################################################################
# Rumble-JP system

##############################                   ↓以下はとりあえず書き換える必要なし
# General

#central server's host name and HTTP port number. e.g. "localhost:8080"
rumblejp.site=localhost:8080

##############################
# Static contents serving system

static_contents.root=D:/jboss-3.0.6_tomcat-4.1.18/system-site/test静的コンテンツ差込システムのルートディレクトリ
                                 とりあえずこんな感じで<JBOSS_HOME>/system-site/testとなるように書きましょう。
                                 詳細は「11.静的コンテンツ差込システム」にて。


##############################                   ↓ユーザ登録機能を動かしてみるときは書き換える。
# User registration system

user_registration.enabled=true
registration.admin=user_admin@robocode.ddo.jp登録確認メールの署名部に書かれるメールアドレス
mail.recv.url=pop3://<user>:<pass>@<pop server host name>POPサーバへのログインID/パスワード/POSサーバアドレス
mail.host=<smtp server host name>SMTPサーバのアドレス
mail.user=<smtp user name>SMTPサーバのユーザID
mail.from=user_admin@robocode.ddo.jp登録確認メールのFrom欄に記載されるメールアドレス

##############################                   ↓以下はとりあえず書き換える必要なし
# Robot registration

robot_registration.enabled=true

##############################                   ↓以下はとりあえず書き換える必要なし
# Distributed server

# Logical host name and password to register as distributed server.
# These property is used Rumble-JP system inside.
# Don't have to set real host name.
distribute.hostname=localserver
distribute.password=robo

7. JDKの追加設定プログラムの実行

Webサービス関連のJARファイルをJDKの拡張ライブラリ格納場所にコピーします。

Linuxで環境を構築する方は、JDKをインストールしたディレクトリに書き込み権限のあるユーザで実行してください。

7.1. 追加設定プログラムの実行

D:\workspace\rumble-jp>ant setup-jdk
Buildfile: build.xml

setup-jdk:
     [copy] Copying 2 files to C:\java\jdk1.4.1\jre\lib\ext

BUILD SUCCESSFUL
Total time: 1 second

これで、JDKの追加設定終了です。この手順は1度だけ実行すれば、今後、開発環境構成の変更があっても実行する必要はありません。

8. その他設定プログラムの実行

その他の設定(MySQLへのデータベースの作成、JBossの設定、分散サーバ実行環境の作成)を行うプログラムを実行します。

8.1. 設定プログラムの実行

D:\workspace\rumble-jp>ant setup-all
Buildfile: build.xml

setup-database:
      [sql] Executing commands
      [sql] 3 of 3 SQL statements executed successfully
      [sql] Executing file: D:\workspace\rumble-jp\schema\tables.sql
      [sql] 35 of 35 SQL statements executed successfully

setup-jboss:
     [copy] Copying 1 file to D:\jboss-rumble-jp\bin
     [copy] Copying 1 file to D:\jboss-rumble-jp\bin
     [copy] Copying 7 files to D:\jboss-rumble-jp\server\default\lib
     [copy] Copying 4 files to D:\jboss-rumble-jp\server\default\deploy
  [xmledit] Update elements: 1
  [xmledit] Update elements: 1
  [xmledit] Update elements: 1
     [copy] Copying 1 file to D:\jboss-rumble-jp
[propertyfile] Updating property file: D:\jboss-rumble-jp\site.properties

setup-distribute:
    [mkdir] Created dir: D:\workspace\rumble-jp\distribute\lib
    [mkdir] Created dir: D:\workspace\rumble-jp\distribute\battles
    [mkdir] Created dir: D:\workspace\rumble-jp\distribute\compilers
    [mkdir] Created dir: D:\workspace\rumble-jp\distribute\logs
    [mkdir] Created dir: D:\workspace\rumble-jp\distribute\robots
    [mkdir] Created dir: D:\workspace\rumble-jp\distribute\templates
     [copy] Copying 4 files to D:\workspace\rumble-jp\distribute\lib
     [copy] Copying 5 files to D:\workspace\rumble-jp\distribute\lib
     [copy] Copying 5 files to D:\workspace\rumble-jp\distribute
[propertyfile] Updating property file: D:\workspace\rumble-jp\distribute\distrib
ute.properties
      [sql] Executing commands
      [sql] 1 of 1 SQL statements executed successfully

setup-all:
     [echo] ==================================================

     [echo]   Setup task has been successfully completed!

     [echo] ==================================================

BUILD SUCCESSFUL
Total time: 4 seconds
以上で設定プログラムの実行終了です。

9. システムのビルド

システムのビルド方法は以下の通りです。

9.1. ビルドスクリプトの実行

rumble-jpディレクトリでantを実行するだけです。

D:\workspace\rumble-jp>ant
Buildfile: build.xml

init:
     [echo] java.home = C:\java\jdk1.4.1\jre
     [echo] ant.home = C:\java\ant
     [echo] jboss.home = D:/jboss-3.0.6_tomcat-4.1.18
     [echo] java.class.path = C:\java\jdk1.4.1\lib\tools.jar;C:\java\ant\lib\xml
-apis.jar;C:\java\ant\lib\xercesImpl.jar;C:\java\ant\lib\optional.jar;C:\java\an
t\lib\ant.jar;


xdoclet-generate:
    [mkdir] Created dir: D:\workspace\rumble-jp\build\generate-source\ejb
    [mkdir] Created dir: D:\workspace\rumble-jp\build\generate-resource\META-INF

[ejbdoclet] Generating Javadoc
[ejbdoclet] Javadoc execution
[ejbdoclet] ソースファイル D:\workspace\rumble-jp\java\rumblejp\ejb\entity\Leagu
eEntityBean.java を読み込んでいます...
[ejbdoclet] ソースファイル D:\workspace\rumble-jp\java\rumblejp\ejb\entity\Seaso
nEntityBean.java を読み込んでいます...

中略

[ejbdoclet] Javadoc 情報を構築しています...
[ejbdoclet] D:\workspace\rumble-jp\java\rumblejp\ejb\entity\LeagueEntityBean.jav
a:12: パッケージ rumblejp.ejb.interfaces は存在しません。
[ejbdoclet] import rumblejp.ejb.interfaces.*;
[ejbdoclet] ^
[ejbdoclet] D:\workspace\rumble-jp\java\rumblejp\ejb\entity\LeagueEntityBean.jav
a:52: シンボルを解決できません。
[ejbdoclet] シンボル: クラス LeagueEntityData
[ejbdoclet] 場所    : rumblejp.ejb.entity.LeagueEntityBean の クラス
[ejbdoclet]     public abstract LeagueEntityData getData();
[ejbdoclet]                         ^

中略
上記のようにエラーのような表示が出ますが、無視してかまいません

[ejbdoclet] Running 
[ejbdoclet]   Generating Home interface for 'rumblejp.ejb.entity.LeagueEntityBea
n'.
[ejbdoclet]   Generating Home interface for 'rumblejp.ejb.entity.SeasonEntityBea
n'.
[ejbdoclet]   Generating Home interface for 'rumblejp.ejb.session.BattleManagerB
ean'.
[ejbdoclet]   Generating Home interface for 'rumblejp.ejb.session.DistServerMana
gerBean'.
[ejbdoclet]   Generating Home interface for 'rumblejp.ejb.session.LeagueManagerB
ean'.
[ejbdoclet]   Generating Home interface for 'rumblejp.ejb.session.RobotManagerBe
an'.
[ejbdoclet]   Generating Home interface for 'rumblejp.ejb.session.SeasonManagerB
ean'.
[ejbdoclet]   Generating Home interface for 'rumblejp.ejb.session.SummarizerBean
'.
[ejbdoclet]   Generating Home interface for 'rumblejp.ejb.session.UserManagerBea
n'.
[ejbdoclet] Running 
[ejbdoclet] Running 
[ejbdoclet]   Generating Remote interface for 'rumblejp.ejb.entity.LeagueEntityB
ean'.
[ejbdoclet]   Generating Remote interface for 'rumblejp.ejb.entity.SeasonEntityB
ean'.
[ejbdoclet]   Generating Remote interface for 'rumblejp.ejb.session.BattleManage
rBean'.
[ejbdoclet]   Generating Remote interface for 'rumblejp.ejb.session.DistServerMa
nagerBean'.
[ejbdoclet]   Generating Remote interface for 'rumblejp.ejb.session.LeagueManage
rBean'.
[ejbdoclet]   Generating Remote interface for 'rumblejp.ejb.session.RobotManager
Bean'.
[ejbdoclet]   Generating Remote interface for 'rumblejp.ejb.session.SeasonManage
rBean'.
[ejbdoclet]   Generating Remote interface for 'rumblejp.ejb.session.SummarizerBe
an'.
[ejbdoclet]   Generating Remote interface for 'rumblejp.ejb.session.UserManagerB
ean'.
[ejbdoclet] Running 
[ejbdoclet] Running 
[ejbdoclet]   Generating PK class for 'rumblejp.ejb.entity.LeagueEntityBean'.
[ejbdoclet]   Generating PK class for 'rumblejp.ejb.entity.SeasonEntityBean'.
[ejbdoclet] Running 
[ejbdoclet]   Generating Data Object class for 'rumblejp.ejb.entity.LeagueEntity
Bean'.
[ejbdoclet]   Generating Data Object class for 'rumblejp.ejb.entity.SeasonEntity
Bean'.
[ejbdoclet] Running 
[ejbdoclet] Running 
[ejbdoclet]   Generating CMP class for 'rumblejp.ejb.entity.LeagueEntityBean'.
[ejbdoclet]   Generating CMP class for 'rumblejp.ejb.entity.SeasonEntityBean'.
[ejbdoclet] Running 
[ejbdoclet]   Generating EJB deployment descriptor.
[ejbdoclet] Running 
[ejbdoclet]   Generating jboss.xml.
[ejbdoclet]   Generating jaws.xml.
[ejbdoclet]   Generating jbosscmp-jdbc.xml.
[ejbdoclet] 警告 20 個

compile-server:
    [mkdir] Created dir: D:\workspace\rumble-jp\build\classes
    [javac] Compiling 125 source files to D:\workspace\rumble-jp\build\classes

ejb-jar:
    [mkdir] Created dir: D:\workspace\rumble-jp\build\deploy
      [jar] Building jar: D:\workspace\rumble-jp\build\deploy\rumblejp-ejb.jar

web-war:
    [mkdir] Created dir: D:\workspace\rumble-jp\build\webapp
     [copy] Copying 45 files to D:\workspace\rumble-jp\build\webapp
     [copy] Copying 4 files to D:\workspace\rumble-jp\build\webapp\WEB-INF\lib
    [mkdir] Created dir: D:\workspace\rumble-jp\build\webapp\WEB-INF\classes
     [copy] Copying 116 files to D:\workspace\rumble-jp\build\webapp\WEB-INF\cla
sses
      [jar] Building jar: D:\workspace\rumble-jp\build\deploy\rumblejp.war

battleobserver-jar:
      [jar] Building jar: D:\workspace\rumble-jp\build\deploy\battleobserver.jar


throughputobserver-jar:
      [jar] Building jar: D:\workspace\rumble-jp\build\deploy\throughputobserver
.jar

deploy-server:
     [copy] Copying 4 files to D:\jboss-rumble-jp\server\default\deploy

WS-generate:
    [mkdir] Created dir: D:\workspace\rumble-jp\build\generate-source\ws
    [mkdir] Created dir: D:\workspace\rumble-jp\build\generate-resource\WSDL
[java2wsdl] Java2WSDL rumblejp.webservices.Battles
[wsdl2java] WSDL2Java D:\workspace\rumble-jp\build\generate-resource/WSDL/Battle
s.wsdl

compile-distribute:
    [javac] Compiling 13 source files to D:\workspace\rumble-jp\build\classes

distribute-jar:
      [jar] Building jar: D:\workspace\rumble-jp\build\deploy\distribute.jar

deploy-distribute:
     [copy] Copying 1 file to D:\workspace\rumble-jp\distribute\lib

deploy-all:

BUILD SUCCESSFUL
Total time: 30 seconds
上記のように表示され、最後にBUILD SUCCESSFULと表示されたら成功です。

10. 稼動確認

システムが正常に動いているか確認してみましょう。

10.1. JBossの起動

JBossを展開したディレクトリ以下にbinディレクトリがあります。このなかにあるrun.bat/run.shを起動するとJBossが起動します。

D:\jboss-3.0.6_tomcat-4.1.18>run.bat
===============================================================================
.
  JBoss Bootstrap Environment
.
  JBOSS_HOME: D:\jboss-3.0.6_tomcat-4.1.18\bin\\..
.
  JAVA: C:\java\jdk1.4.1\bin\java
.
  JAVA_OPTS: -Drumblejp.properties=D:\jboss-3.0.6_tomcat-4.1.18\bin\\..\site.properties
.
  CLASSPATH: ;C:\java\jdk1.4.1\lib\tools.jar;D:\jboss-3.0.6_tomcat-4.1.18\bin\\run.jar
.
===============================================================================
.
19:11:17,421 INFO  [Server] JBoss Release: JBoss-3.0.6 CVSTag=JBoss_3_0_6
19:11:17,437 INFO  [Server] Home Dir: D:\jboss-3.0.6_tomcat-4.1.18
19:11:17,437 INFO  [Server] Home URL: file:/D:/jboss-3.0.6_tomcat-4.1.18/
19:11:17,437 INFO  [Server] Library URL: file:/D:/jboss-3.0.6_tomcat-4.1.18/lib/
19:11:17,437 INFO  [Server] Patch URL: null

中略

19:11:37,796 INFO  [Server] JBoss (MX MicroKernel) [3.0.6 (CVSTag=JBoss_3_0_6 Date=200301260037)] Started in 0m:20s:328ms
エラーのスタックトレースが表示されずに上記のように表示されたらうまく起動しています。

10.2. ブラウザでアクセス

ブラウザで、以下のURLにアクセスしてみましょう。

http://localhost:8080/rumblejp/

画面が正常に表示されたらOKです。以上で環境構築がすべて終了しました。

補足ドキュメント

11. 静的コンテンツ差込システム

Rumble-JPシステムには、ビルドし直さずに内部の静的なコンテンツを差し替える仕組みがあり、「静的コンテンツ差込システム」と呼んでいます。これは上記の.ant.propertiesを編集したときに設定したもので、システムトップページの「Information」、「ルール」、および「リンク集」などを表示するために使用しています。

.ant.propertiesによって正しく設定されましたが、このままだと差し込まれるコンテンツがローカルにない状態なので表示できません。差し込まれるコンテンツはCVSのsystem-siteモジュールにて管理されていますので、これを別途チェックアウトします。

.ant.propertiesの設定を<JBOSS_HOME>/system-site/testとなるように設定した場合、<JBOSS_HOME>ディレクトリにsystem-siteモジュールをチェックアウトしてください。チェックアウトの説明は省略しますが、これで静的コンテンツを表示できるようになります。

12. 開発環境構築後の開発手順

環境構築が終わったあとの開発手順は以下のようになります。

12.1. MySQLの起動

C:\>net start mysql

12.2. CVSリポジトリとの同期

他の人がソースに変更を加えているかもしれませんので、最新ソースを反映します。

Eclipseな方は、パッケージエクスプローラーでrumble-jpプロジェクトを右クリックし、「チーム」→「リポジトリーと同期化」を選択し、最新ソースを取り込んでください。

12.3. ソースの編集

ソースを編集します。

12.4. 稼動確認

JBossを起動してブラウザでアクセスし、正常に動作することを確認します。

D:\jboss-3.0.6_tomcat-4.1.18\bin>run.bat
...
正常でなければ「12.3. ソースの編集」に戻って修正します。

12.5. コミット

編集結果をCVSリポジトリに反映します。

Eclipseな方は、パッケージエクスプローラーでrumble-jpプロジェクトを右クリックし、「チーム」→「リポジトリーと同期化」を選択し、コミットしてください。

13. 設定プログラムの実行内容

環境構築手順では、以下のように2つの設定プログラムを実行しましたが、

setup-allには以下の3つのサブタスクが含まれています。

これらは、以下のように独立して実行することもできます。
D:\workspace\rumble-jp>ant setup-database
以下では、それぞれの設定内容について簡単に説明します。

13.1. setup-jdk

JDKのサブディレクトリjre/lib/extに、jaxrpc.jarとsaaj.jarという2つのファイルをコピーするだけです。これらはWebサービスの実行に必要なファイルです。

13.2. setup-database

このタスクは、.ant.propertiesの設定にしたがってデータベースの設定を行います。

  • MySQLにデータベースを作成(まだ作成していなければ)
  • MySQLにユーザを作成(まだ作成していなければ)
  • 作成したデータベースにschema/tables.sqlを実行してテーブルを作成
    (既に作成してあれば、いったん消して再作成)
テーブルスキーマを変更したときなどは、このタスクを実行してテーブルを再作成する必要があります。

13.3. setup-jboss

このタスクはJBossの設定を行います。

  • JBOSS_HOME/binに設定済みの起動スクリプトをコピー
  • JBOSS_HOME/server/default/libにライブラリをコピー
  • JBOSS_HOME/server/default/deployに設定済みの設定ファイルをコピー
    (この設定ファイルは、一度設定したらあまり変更されることのないタイプのものです)
  • コピーした設定ファイルを.ant.propertiesにしたがって修正
  • JBOSS_HOME/server/default/deployから、不要な設定ファイルを削除
  • JBOSS_HOMEにcheckrobotsとrobotsという2つのディレクトリ(ロボットクラスが格納されるところ)を作成
  • JBOSS_HOME/に設定ファイルをコピー
    (この設定ファイルは実行時設定を指定するもので、書き換えるときがあります)
  • コピーした設定ファイルを.ant.propertiesにしたがって修正
このタスクは、実行時設定を追加したときや、必要ライブラリが増えたときなどに再実行する必要があります。

13.4. setup-distribute

このタスクは、分散サーバの実行環境をrumble-jp/distributeというディレクトリに作ります。

  • 分散サーバに必要なサブディレクトリを作成
  • ライブラリファイルをコピー
  • 分散サーバの設定ファイルdistribute.propertiesを.ant.propertiesの設定を基に作成
  • adminユーザ所有のマシンとしてdistributeディレクトリに作った分散サーバをDBに登録

Top > 開発環境の作り方