Select Japanese EUC if the characters are not shown properly.
$Lastupdate: 2004/04/08 14:48:23 $
この文書は、ohymosj の開発メモです。ohymosj-2.0 以降を対象にして います。
作成途上版です。
この項では、すでに java プログラムの実行環境がインストールさ れているとして話を進めます。
ohymosj-2.x.yymmdd.tar.gz を展開してできたディレクトリ(プロ ジェクトルート) の下に
build/lib/ohymosj.jar
というファイルがあることを確認してください。このファイルが無 ければ、ohymosj.jar を作る必要があります。ohymosj.jar を作る には、「ohymosj.jar を作成するには」を参照してください。
ohymosj.bat は、ohymosj.jar が c:/ohymosj に置いてあるという 前提に立っているので、ohymosj.jar を c:/ohymosj に置いてくだ さい。ohymosj.bat の内容を変更して、ohymosj.jar を置く場所を 変更することもできます。
ohymosj を cygwin で動作させる場合は、プロジェクトルートにあ る ohymosj をパスの通ったフォルダに移動してください。
ohymosj は、ohymosj.jar が c:/ohymosj に置いてあるという前提 に立っているので、ohymosj.jar を c:/ohymosj に置いてください。 ohymosj の内容を変更して、ohymosj.jar を置く場所を変更するこ ともできます。
ohymosj を unix で動作させる場合は、cygwin で動作させる場合 に準じてください。
椎葉は、ohymosj の開発に、
XonWindows 2 は商用のソフトですが、XonWindows 2 を使用せず、フリー で入手できる cygwin 環境を使用しても問題ないはずです。
j2sdk1.4.2-03 は、http://java.sun.com/j2se/ から入手でき ます。
JUnit の home page
から、
junit3.8.1.zip
を取得しました。
このファイルを解凍すると junit3.8.1 というフォルダができます。こ のフォルダを、c:/java の下に置きました。
環境変数 JUNIT_HOME, CLASSPATH をつぎのように設定します。
export JUNIT_HOME="C:\\java\\junit3.8.1"
CLASSPATH="$CLASSPATH;$JUNIT_HOME\\junit.jar"
と書きました。
http://www.meadowy.org/meadow/
に行き、Meadow-2.00Beta2-dev (WOMINAHESHI) と表示されているリン クをクリックして、その結果表示されるページで、
Netinstall パッケージ setup-ja.exe
のリンクをクリックして、最終的に
setup-ja-0.10.exe
を取得しました。
c:/Meadow
というディレクトリを用意し、その下に、setup-ja-0.10.exe を置いて、 setup-ja-0.10.exe を実行しました。Meadow をインストールするディ レクトリとして、
C:/Meadow
を指定しました。この下に、Meadow2 WONINAESHI がインストールされ ました。
http://www.alles.or.jp/~torutk/oojava/maneuver/2001/ant/ant.html
に詳しい説明があります。
から、ant 1.6beta1 をダウンロードしました。
2003/10/07 にダウンロードした版は、
apache-ant-1.6beta-bin.tar.gz
でした。
解凍レンジで解凍して、できたフォルダ apache-ant-1.6beta を C:\java の下に移動しました。
XonWinodws の kterm などで、ant を起動するときのために
alias ant='c:/java/apache-ant-1.6beta/bin/ant.bat'
という定義を .bashrc に書き込みます。
Windows XP の「コントロールパネル」→「システム」→「詳細設定」 →「環境変数」→「システム環境変数」で
ANT_HOME C:\java\apache-ant-1.6beta
と設定します。
meadow の設定ファイルに
(setenv "ANT_HOME" "c:/java/apache-ant-1.6beta")
と書きます。
00readme.txt ant.dtd build/ build.xml doc/ en/ javaref* javaref.bat* javaref.sh* mken.bat* mken.sh* myant* myjavaenv.el ohymos.png ohymosj* rmjp* samples/ setjavaenv* showendoc* showjadoc* src/ work/
. | 00readme.txt | . | ohymosj のディレクトリの概要を記述 |
. | ant.dtd | . | build.xml に必要 |
. | build/ | . | ohymosj.jar などが作成される |
. | build.xml | . | ohymosj の build ファイル |
. | doc/ | . | ohymosj のドキュメント, javadoc 出力を収録. |
. | en/ | . | 英語版 javadoc 出力を収録 |
. | javaref* | . | Ref 関数処理プログラム |
. | javaref.bat* | . | Ref 関数処理プログラム |
. | javaref.sh* | . | Ref 関数処理プログラム |
. | mken.bat* | . | 英語版 javadoc 出力作成プログラム |
. | mken.sh* | . | 英語版 javadoc 出力作成プログラム |
. | myant* | . | ant 起動スクリプト |
. | myjavaenv.el | . | emacs 補助プログラム |
. | ohymos.png | . | ohymos のロゴマーク |
. | ohymosj* | . | ohymosj.jar の起動プログラム |
. | rmjp* | . | 日本語コメント削除プログラム |
. | samples/ | . | サンプルを置くディレクトリ |
. | setjavaenv* | . | 環境変数設定スクリプト |
. | showendoc* | . | 英語版 javadoc 表示プログラム |
. | showjadoc* | . | 日本語版 javadoc 表示プログラム |
. | src/ | . | ohymosj のソースを収録するディレトクトリ |
shiiba は、j2sdk, junit3.8.1, apache-ant を
c:/java/j2sdk1.4.2_03
c:/java/junit3.8.1
c:/java/apache-ant-1.6beta
にインストールしています。
Windows XP の「コントロールパネル」→「システム」→「詳細設定」 →「環境変数」→「システム環境変数」で
ANT_HOME C:\java\apache-ant-1.6beta
JAVA_HOME C:\java\j2sdk1.4.2_03
JUNIT_HOME C:\java\junit3.8.1
CLASSPATH .;C:\java\classes;C:\java\junit3.8.1\junit.jar
と定義しています。また、Path 環境変数に、 C:\java\j2sdk1.4.2_03\bin を追加しています。
ohymosj のソースを編集したり、ドキュメントを生成したりする作業を 補助するために、つぎの環境変数
JAVA_PACKAGE
JAVA_PROJECT_ROOT
JAVA_URL
を使用します。
デフォールトの値を .bashrc の中で定義しておきます (bash を使用し ているので)。shiiba は、
export JAVA_PACKAGE=ohymosj
export JAVA_URL=""
export JAVA_PROJECT_ROOT=~/base/ohymosj/ohymosj-2.0
と定義しています。
JAVA_PROJECT_ROOT には、project を開発するディレクトリの名前を設 定します。default では、ohymosj の開発作業をすることにして、 ohymosj のパッケージを置いているディレクトリを指定します。
JAVA_PACKAGE には、開発する Java プログラムのパッケージ名を設定 します。defautl では、ohymosj を指定しています。
JAVA_URL には、開発機関の URL を指定するのが普通です。例えば、
export JAVA_URL=jp/ac/kyoto_u/kuciv/hywr/
のように設定します。空き文字列を指定することもできます。空き文字 列でないときは、最後を / で終るようにします。java の約束では、 URL を指定するときは、大きい指定 (先の例で、jp) から小さい指定 (先の例では、hywr) の順に指定します。
shiiba は、default で空き文字列を指定しています。完全なパッケー ジ名は、JAVA_URL と JAVA_PACKAGE を連結した
$JAVA_URL$JAVA_PACKAGE
で与えられるものとします。ohymosj のパッケージ名は、完全なパッケー ジ名も ohymosj であるとします。
これらの環境変数は、例えば、.bashrc の中で定義する alias の定義
alias cdjroot='cd $JAVA_PROJECT_ROOT'
alias cdjsrc='cd $JAVA_PROJECT_ROOT/src/$JAVA_URL$JAVA_PACKAGE'
で使用されます。こう定義しておけば、
$ cdjroot
で、project を開発するディレクトリに移動できます。また、
$ cdjsrc
で、ソースファイルのあるディレクトリに移動します。
ohymosj の build.xml は、ohymosj のプロジェクトルートで
$ ant jarfile
のような形で実行することを前提に記述されています。
これは、src/ohymosj でソースを編集中に ant コマンドを実行したい 場合に不便なので、myant という alias をつぎのように定義します。
alias myant='cd $JAVA_PROJECT_ROOT; c:/java/apache-ant-1.6beta/bin/ant.bat'
ただし、JAVA_PROJECT_ROOT は、プロジェクトルートを設定している環 境変数です。(「環境の設定」のところを参照してください)。
このように定義しておくと、プロジェクトルートに居なくても、
$ myant jarfile
のようにすると、内部でプロジェクトルートに移動してから、ant コマ ンドを発行してくれます。
ohymosj では、テストのためのファイルも src の下に置きます。 例えば、OhTime.java とともに、そのユニットテストのためのファイル OhTimeTest.java も同じところに置きます。
unit テストを実行するには、
$ myant runtest
としてください。
$ myant jarfile
とします。build/lib/ohymosj.jar が生成されます。
$ myant deploy
とすると、build/lib/ohymosj.jar を特定のディレクトリ (c:/ohymosj) に複写します。複写先を変更するには、build.xml を変 更してください。
$ myant docs
とします。
$ myant showjadoc
で、日本語版の javadoc を閲覧できます。
$ myant edocs
で英語版の javadoc を生成します。このときに、英語版のソースを en/src の下に生成します。
$ myant showendoc
で英語版の javadoc を閲覧できます。
$ myant jarfile
として作成した build/lib/ohymosj.jar にすべてが含まれています。 つまり、ohymosj.jar には、
$ myant deploy
とすると、build/lib/ohymosj.jar は、c:/ohymosj に複写されます。
配布されたパッケージの中に ohymosj というスクリプトが含まれてい ます。このスクリプトは、c:/ohymosj に ohymosj.jar があることを前 提に書かれているので、スクリプト ohymosj を実行する前に、myant deploy を実行しておいてください。
ohymosj
#!/bin/sh if [ -f c:/ohymosj/ohymosj.jar ]; then java -jar c:/ohymosj/ohymosj.jar $* else echo c:/ohymosj/ohymosj.jar does not exist. echo You have to create the jarfile first. fi
ohymosj は、kterm などのターミナルの中で、
$ ohymosj 引数リスト
のようにして起動します。どのような引数を受け付けるかについては、 ohymosj の引数の項を御覧ください。
配布されたパッケージの中には、 ohymosj.bat というバッチファイル も含まれています。このバッチファイルの内容は、
ohymosj.bat
@echo off java -jar c:\ohymosj\ohymosj.jar %1 %2 %3 %4 %5 %6 %7 %8 %9
です。これは、ohymosj.jar を c:/ohymosj に置いたものと仮定して作 成されています。この ohymoj.bat をパスの通ったディレクトリに置い てください。そうすれば、dos prompt の中で、
$ ohymosj.bat 引数リスト
などとすることができます。どのような引数を受け付けるかについては、 ohymosj の引数の項を御覧ください。
ohymosj または ohymosj.bat がどのように引数を受け付けるかは、
$ ohymosj -h
とすると表示されます。-h は、help を表示せよというオプションです。
2004/04/08 現在で、ohymosj -h を実行すると、つぎのように表示され ます。
ohymosj -h
usage: ohymosj -h or ohymosj [-a -e -p] jarfileName or ohymosj [-w] ScfFileName fileBasePart samples: ohymosj -h ohymosj -e build/lib/ohymosj.jar ohymosj -w foo.scf arakura options: -a lists abstract classes -e lists ohymosj elements -p lists ohymosj ports -w uses window interface
オプション -a を使用して
$ ohymosj -a c:/ohymosj/ohymosj.jar
のようにすると、c:/ohymosj/ohymosj.jar の中に含まれている abstract クラスのリストを標準出力に書き出します。ohymosj をただ 実行するだけで、プログラミングはしないよという人には、このリスト はあまり役に立ちません。
オプション -e を使用して、
$ ohymosj -e c:/ohymosj/ohymosj.jar
のようにすると、c:/ohymosj/ohymosj.jar の中に含まれているohymosj の OhElement クラス (OhElement クラスの派生クラスで、具体的な要 素モデル) のリストを標準出力に書き出します。これは、ohymosj.jar の中で用意されている要素モデルを知るのに役に立ちます。プログラミ ンをしなくて、ただ使用するだけの人でも、要素モデルを組み合わせて 流域モデルを作成する必要があるので、このリストは役にたつでしょう。
オプション -p を使用して、
$ ohymosj -p c:/ohymosj/ohymosj.jar
のようにすると、c:/ohymosj/ohymosj.jar の中に含まれているohymosj の OhPort クラス (OhPort クラスの派生クラスで、具体的な端子モデ ル) のリストを標準出力に書き出します。これは、ohymosj.jar の中で 用意されている端子モデルを知るのに役に立ちます。プログラミンをし なくて、ただ使用するだけの人でも、端子を使って要素を結合する必要 があるので、このリストは役にたつでしょう。
オプション -w を指定できるのは、オプション -h, -p, -a, -e を指定 しなかったときです。オプション -h, -p, -a, -e を指定したときは、 ohymosj は、メッセージを標準出力に書き出します。
オプション -w は、GUI を使用したユーザインターフェースを利用する ことを指定するものです。-w を指定しなければ、すなわち標準では、 ohymosj プログラムは、dos prompt や kterm などのターミナルに直接 メッセージを表示し、プログラムが起動した後に対話的にデータを入力 する必要が生じたときも、ターミナルから入力します。オプション-w を指定すると、メッセージの表示やデータの読み取りには、GUI が使用 されます。
rmjp は、日本語のコメントをソースから削除するプログラムです。
java ソースの中で、日本語コメントは、...