On this page |
java [-d] [-c classpath] [-d] [-w] [-x] [class]
このコマンドは、Javaアプリケーションを起動します。また、JavaアプリケーションがHoudiniと通信できるように接続を開きます(openportコマンドと同様)。 $HH/scripts/java/sesi.jarファイル内には、hscriptと呼ばれる単一スタティックメソッドを持つsesi.Houdiniクラスの定義があります。 このhscriptメソッドは、引数として、起動するHoudiniスクリプトコマンドを指定した文字列を受け取ります。コマンドの実行結果は、この関数によって文字列として返されます。 2つ目のメソッドのhscriptexは、hscriptメソッドと同じですが、さらに、Houdini内で指定したコマンドの実行でエラーが起きた時にjava.io.IOExceptionをthrowします。 $HH/scripts/javaディレクトリと$HH/scripts/java/sesi.jarファイルは、CLASSPATH環境変数の値に自動的に追加されます。
このコマンドに渡すclassパラメータは、Javaが実行を開始するクラスを指定します。 指定したクラスは、文字列の配列を引数として受け取り、戻り値のタイプがvoidであるmainと呼ばれるスタティックメソッドを含んでいなければなりません。
-dオプションを指定すれば、Houdiniを終了した時でも、Javaアプリケーションが終了されません。 -cオプションを指定すれば、このコマンドは、Javaアプリケーションに送るCLASS変数の値をプリントします。 -xオプションは、-dオプションで開始しなかった現在実行中のJavaアプリケーションをすべて停止します。 -cまたは-xのどちらかのオプションを指定すれば、classパラメータがオプションになります。 -wオプションを指定すれば、このコマンドは、新しいJavaアプリケーションが終了するまで戻りません。 -sオプションは、Javaアプリケーションが"安全な"コマンドのみを実行します。
オプション
-d
daemon modeで開始します(Houdiniを終了しても、Javaアプリケーションは実行を継続します)。
-c
CLASSPATH。
-x
-dオプションで開始しなかった実行中のJavaプロセスすべてを停止します。
-w
Javaプロセスが終了するのを待ちます。
-s
サンドボックス内のJavaコードを実行します("安全な"コマンドのみが許可されます。例えば、ローカルディスクへのアクセスなし)。
Examples
Javaコード:
import sesi.Houdini; public class test { public static void main( String args[] ) { String oplist = ""; try { oplist = Houdini.hscriptex("opls /"); } catch ( java.io.IOException e ) { } Houdini.hscript( "message " + oplist ); } }
HScriptコマンド:
java -w test
出力: obj out part ch shop img vex
See also |