ohymosj memo
Select Japanese EUC if the characters are not shown properly.

ohymosj memo

  $Lastupdate: 2004/04/08 14:48:23 $

この文書は、ohymosj の開発メモです。ohymosj-2.0 以降を対象にして います。

作成途上版です。

CONTENTS


[Top] [Last]


[Contents]

1 ohymosj のインストール

  1. ohymosj を使用するためには、java プログラムの実行環境がイン ストールされている必要があります。

    この項では、すでに java プログラムの実行環境がインストールさ れているとして話を進めます。

  2. 配布されている ohymosj-2.x.yymmdd.tar.gz を展開してください。

    ohymosj-2.x.yymmdd.tar.gz を展開してできたディレクトリ(プロ ジェクトルート) の下に

      build/lib/ohymosj.jar
    

    というファイルがあることを確認してください。このファイルが無 ければ、ohymosj.jar を作る必要があります。ohymosj.jar を作る には、「ohymosj.jar を作成するには」を参照してください。

  3. ohymosj を dos prompt で動作させる場合は、プロジェクトルート にある ohymosj.bat をパスの通ったフォルダに移動してください。

    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 で動作させる場合 に準じてください。

  4. 実際に ohymosj を動作させるには、「ohymosj を実行する」の項 を参照してください。


[Contents]

2 ohymosj の開発環境

椎葉は、ohymosj の開発に、

を使用しています。

XonWindows 2 は商用のソフトですが、XonWindows 2 を使用せず、フリー で入手できる cygwin 環境を使用しても問題ないはずです。


[Contents]

2.1 j2sdk1.4.2-03 のインストール

j2sdk1.4.2-03 は、http://java.sun.com/j2se/ から入手でき ます。

注 2004/04/05 現在で、j2sdk1.4.2-04 と j2sdk1.5 Beta 1 が入手 できます。shiiba は、j2sdk1.5 Beta 1 を試しに使用していますが、 ohymosj-2.0 では、j2sdk1.5 Beta 1 でないとコンパイルできない ようなコードは書いていません。


[Contents]

2.2 JUnit のインストール

JUnit の home page

http://junit.org/index.htm

から、

  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"

と書きました。


[Contents]

2.3 meadow のインストール

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 がインストールされ ました。


[Contents]

2.4 ant のインストール

http://www.alles.or.jp/~torutk/oojava/maneuver/2001/ant/ant.html

に詳しい説明があります。

http://ant.apache.org/

から、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")

と書きます。


[Contents]

3 ohymosj ディレクトリの基本的な構成

  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 のソースを収録するディレトクトリ


[Contents]

4 環境の設定


[Contents]

4.1 システムのプロバティから設定する環境変数

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 を追加しています。


[Contents]

4.2 .bashrc で設定する環境変数、alias

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

で、ソースファイルのあるディレクトリに移動します。


[Contents]

5 ant の利用


[Contents]

5.1 myant

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 コマ ンドを発行してくれます。


[Contents]

5.2 unit テストを実行するには

ohymosj では、テストのためのファイルも src の下に置きます。 例えば、OhTime.java とともに、そのユニットテストのためのファイル OhTimeTest.java も同じところに置きます。

unit テストを実行するには、

  $ myant runtest

としてください。


[Contents]

5.3 ohymosj.jar を作成するには

  $ myant jarfile

とします。build/lib/ohymosj.jar が生成されます。


[Contents]

5.4 ohymosj.jar を特定のフォルダにコピーするには

  $ myant deploy

とすると、build/lib/ohymosj.jar を特定のディレクトリ (c:/ohymosj) に複写します。複写先を変更するには、build.xml を変 更してください。


[Contents]

5.5 javadoc を生成するには


[Contents]

5.5.1 日本語版の javadoc の生成

  $ myant docs 

とします。

  $ myant showjadoc

で、日本語版の javadoc を閲覧できます。


[Contents]

5.5.2 英語版の javadoc の生成

  $ myant edocs

で英語版の javadoc を生成します。このときに、英語版のソースを en/src の下に生成します。

  $ myant showendoc

で英語版の javadoc を閲覧できます。


[Contents]

6 ohymosj を実行する


[Contents]

6.1 スクリプト ohymosj とバッチファイル ohymosj.bat

  $ 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 の引数の項を御覧ください。


[Contents]

6.2 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 が使用 されます。


[Contents]

7 tools


[Contents]

7.1 rmjp 日本語コメントをソースから削除する

rmjp は、日本語のコメントをソースから削除するプログラムです。

java ソースの中で、日本語コメントは、...


[Contents]

7.2 javaref Ref 関数をリンクに書換える


[Contents]

7.3 myjavaenv.el Ref 関数で jump


[Contents] [Top] .