[[ja/Projects/wija]]

#contents

* 概要 [#bb3d8452]
wija は Java 2 Standard Edition により記述されています。
Java 2 Standard Edition による開発には JDK (Java Developers Kit) が必要です。

* Nightly build (夜ごとのビルド) [#c77bb46b]
wija-devel(-en) のメンバは、
Perforce によるレビューメッセージを受け取ることで、
更新があったときに最新のソフトウェアやドキュメンテーションを試用できます。

しかし、Perforce で取得できるのはソースコードですので
(ヘルプページも「オムニドキュメント」という形式で書かれたソースコードが
バージョン管理の対象となります)、実際に試用するためには、
開発ツールを用いてビルドする必要があります。

開発ツールを用いない方でも、更新があったときにそれを試せるように、
内部リリースを行います。

この内部リリースは、更新があった翌日の、日本時間の明け方に行われます。
(将来的には自動化する予定ですが、当面、手作業で行いますので、実施時間にブレが生じます。)
- http://www2.media-art-online.org/nightly/

 wija-change番号.zip
* 開発ツール [#be2a1091]
- Perforce (http://www.perforce.com/ )
-- ソフトウェア構成管理ツール
- Ant (http://ant.apache.org/ )
-- ビルドツール

* Perforce の導入と設定 [#f9e87c83]
** ダウンロードとインストール [#re5333fa]
- http://www.perforce.com/ のダウンロードページから、お使いのプラットフォームに対応する p4 ソフトウェアをダウンロードし、インストールします。
-- p4 はコマンドライン (コマンドプロンプト) で動作するプログラムです。GUI を持つプログラムもありますが、コマンドラインが結局一番便利に使えますので、ここでは p4 ソフトウェアの説明を行います。

** Perforce で用いる環境変数 [#g85668bd]
|LEFT:|LEFT:|LEFT:|c
|環境変数名|意味|設定する内容|h
|~P4CLIENT|クライアント名|ユーザが用いるワークスペースを識別するのに用いられます。|
|~P4EDITOR|エディタ|ユーザが普段用いているエディタプログラム|
|~P4PASSWD|パスワード|お知らせしたパスワード|
|~P4PORT|サーバ名:ポート|perforce.media-art-online.org:1666|
|~P4USER|ユーザ名|お知らせしたユーザ名|
** 主な Perforce コマンド [#s4888be6]
|LEFT:|LEFT:|c
|コマンド名|機能|h
|~p4 add|ファイルの追加|
|~p4 client|クライアントの作成・編集・削除|
|~p4 clients|クライアントの一覧表示|
|~p4 delete|ファイルの削除|
|~p4 edit|ファイルを編集のためにオープン|
|~p4 resolve|編集内容の衝突の解決|
|~p4 revert|提出前の変更の取り消し|
|~p4 submit|追加・編集・削除内容の depot への提出|
|~p4 sync|depot からファイルを取得してワークスペースを更新|
|~p4 user|ユーザの作成・編集・削除|
|~p4 users|ユーザの一覧表示|
** MAO WSCM Depot の構成 [#u85d2290]

|LEFT:|LEFT:|c
|パス|意味|h
|~//depot/wcm/...|Media Art Online Web サイト (wija ヘルプページを含む)|
|~//depot/scm/...|Media Art Online ソフトウェア (wija を含む)|
|~//depot/docs/...|Media Art Online パブリケーション (論文、発表資料等)|

wija-devel(-en) メーリングリストのメンバは、//depot/wcm/... と //depot/scm/... の内容をレビューする
(変更が加えられた時に通知を受け取る) ように設定されています
(設定はご自分で変更可能です)。
wija-devel(-en) メーリングリストのメンバのうち、村井研究室のメンバは、
更に //depot/docs/... の内容をレビューするように設定されています。

パブリケーションは以下の URL から自動的にアクセス可能になります。
- http://www2.media-art-online.org/docs/
** ソフトウェア開発のためのディレクトリ構成 [#o4395038]

 +-java----+ ↓java ディレクトリ以下は p4 sync で自動的に作成されます。
 |         |
 |         +-org-+
 |               |
 |               +-media-art-online-+
 |                                  |
 |                                  +-encoding (符号化ライブラリ)
 |                                  |
 |                                  +-gnupg    (GnuPG ライブラリ)
 |                                  |
 |                                  +-helpgen  (ヘルプページ作成ツール)
 |                                  |
 |                                  +-iwat     (i-WAT プラグイン)
 |                                  |
 |                                  +-iwatsrv  (i-WAT ロボットプラグイン)
 |                                  |
 |                                  +-jabber   (Jabber/XMPP ライブラリ)
 |                                  |                                    
 |                                  +-omelets  (OMELETS (LETS) ライブラリ)
 |                                  |
 |                                  +-plugin   (プラグインライブラリ)
 |                                  |
 |                                  +-qtx      (Cutie X プラグイン)
 |                                  |
 |                                  +-spotlite (SpotLite プラグイン)
 |                                  |
 |                                  +-tunes    (Tunes プラグイン)
 |                                  |
 |                                  +-whp      (WIDE Hours プラグイン)
 |                                  |
 |                                  +-whpsrv   (WIDE Hours ロボットプラグイン)
 |                                  |
 |                                  +-wija     (wija ライブラリ)
 |                                  |
 |                                  +-wija_    (wija 主プログラム)
 |                                  |
 |                                  +-wijabot  (wija ロボット主プログラム)
 |                                  |
 |                                  +-xml      (XML ライブラリ)
 |
 |
 +-javadoc (ドキュメントディレクトリ; ant doc で自動的に作成されます)
 |
 +-javaout (出力ディレクトリ; ビルドする前に作成しておく必要があります)

** ドキュメント開発のためのディレクトリ構成 [#vaf45b34]

 +-gnupg--+
 |        |
 |        +-help            (GnuPG ヘルプページ)
 |
 +-iwat---+                 (i-WAT 主ページ)
 |        |
 |        +-help            (i-WAT ヘルプページ)
 |
 +-java---+
 |        |
 |        +-help            (Java ヘルプページ)
 |
 +-png                      (画像ファイル)
 |
 +-png-en                   (画像ファイル - 英語版用)
 |
 +-wija---+                 (wija 主ページ)
          |
          +-help            (wija ヘルプページ)
          |
          +-download-+      (wija ダウンロードページ)
                     |
                     +-0.07 (version 0.07 リリースファイル)
                     |
                     :

** パブリケーションのためのディレクトリ構成 [#qc12a4c7]

 +-tex-+     (論文/発表資料の LaTeX2εソースファイル)
       |
       +-eps (論文/発表資料に挿入する図版)
** Perforce チュートリアル [#cdfb5628]
*** ユーザの設定 [#h94a2c81]

 $ p4 user ユーザ名

 Password:    ****** ←書き換えます

 Reviews:
     //depot/wcm/... ←ドキュメントの更新のレビューメッセージを受け取ることを示します
     //depot/scm/... ←ソフトウェアの更新のレビューメッセージを受け取ることを示します
*** クライアントの作成 [#we1b3075]

 $ p4 client クライアント名

 Root: 基点となるディレクトリ名 (例: /Users/alice/Programs)

 View:
     //depot/scm/main/java/org/... //クライアント名/java/org/...

 View:
     //depot/wcm/main/gnupg/...          //クライアント名/gnupg/...
     //depot/wcm/main/iwat/...           //クライアント名/iwat/...
     //depot/wcm/main/java/...           //クライアント名/java/...
     //depot/wcm/main/png/...            //クライアント名/png/...
     //depot/wcm/main/png-en/...         //クライアント名/png-en/...
     //depot/wcm/main/wide_hour/help/... //クライアント名/wide_hour/help/...
     //depot/wcm/main/wija/...           //クライアント名/wija/...
*** ワークスペースの構築と更新 [#y856b47c]

 $ p4 -c クライアント名 sync

*** ビルド [#h39e6b4b]

 $ cd Programs/java/org/media_art_online/wija_
 $ ant package

 $ cd ../iwat
 $ ant package

*** レビューメッセージを受け取ったら… [#ece641e6]

 $ p4 -c クライアント名 sync
*** ファイルの追加 [#xc1c0320]

 $ p4 -c クライアント名 add -t ファイルタイプ ファイル名...

|LEFT:|LEFT:|c
|ファイルタイプ|意味|h
|~text+k|テキストファイル (キーワード変換あり)|
|~binary|バイナリファイル|
*** ファイルの編集 [#i96e7b43]

 $ p4 -c クライアント名 edit ファイル名...
*** 変更内容の depot への提出 [#wbd0ca91]

 $ p4 -c クライアント名 submit

Description を記述します (なるべく英語を用いてください)。

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS