Jython - (2009/02/27 (金) 00:37:42) の最新版との変更点
追加された行は緑色になります。
削除された行は赤色になります。
*JythonでHello Worldアプレットを作ってみる
Jythonとは、PythonのプログラムでJavaのクラスを利用するためのインタプリタ/コンパイラです。
Java中間コードを出力したり、Appletを作ったりすることもできます。
#contents
*開発環境のインストール
-Javaをインストールしよう
とりあえずはJavaをダウンロードしないと始まらないので・・・・
[[>http://java.sun.com/javase/downloads/index.jsp]]
からJavaをダウンロードしよう(JDKで良い。まぁ最新が無難)
ダウンロードしたら、それをインストール!!
-Jythonをインストールしよう
またダウンロードしないと始まらないので・・・・
[[>http://www.jython.org/Project/download.html]]
からダウンロードしよう(jython-2.2.1で青くなってる所をクリック)
ダウンロードが終わったらたぶんjarファイルだと思うので、ダブルクリックすればいいと思うけど、不明なアプリケーションになっている方はプロパティから
JAVA(TM)Platform SE binary
を指定してあげるとよい。
最初に言語設定(2語しかないけどw)してから同意書に同意した後に、インスコするディレクトリの指定後に
#image(http://farm4.static.flickr.com/3352/3340723392_1e2214603e.jpg,http://www.flickr.com/photos/29863418@N06/3340723392/,blank)
と、JDK指定できるのが出るので、複数JAVAが入ってる場合はOtherから好きなJDKを指定してあげると良い。後は道なりにw
-パス設定をしよう
環境変数からパス指定してやらないといけないので、
JAVA・Jythonともにパスを設定してあげてください。
JAVAインストール先がデフォルトのままだと
C:\Program Files\Java\jdk1.6.0_12\bin
までを指定してあげればよい(jdk1.6.0_12のところは各々のヴァージョンにしてください)
Jythonインストール先がデフォルトのままだと確か・・・・
C:\jython2.2.1
だったはずなので、ここまでを指定してあげればよい。
パス設定した後は再起動を忘れずにww
-使ってみようぜ
パス指定がちゃんといってるのかとか調べるためにも使ってみるのが大事。
まぁJythonが成功してればJAVAも成功してるということで、
コマンドプロンプトを立ち上げて
jython
と打ってみよう。(初回起動なので何かjarファイルを色々と勝手に読み込むはず)
そうすると、対話型のインタプリタ(以下のようなもの。初回起動はもっと何か長いはずだけど下三行が出てればOK)が立ち上がるはずなので、
C:\>jython
Jython 2.2.1 on java1.6.0_12
Type "copyright", "credits" or "license" for more information.
>>>
下のように打つと
print("Jythonを学びましょう")
#image(http://farm4.static.flickr.com/3659/3323964512_f40b2d0ba7.jpg,http://www.flickr.com/photos/29863418@N06/3323964512/,blank)
と出るはずである。これでJythonが使えるようになったね万歳!!
*JythonでHello Worldアプレットを作ってみる
-ソースコードを書いてみよう
from java.applet import Applet
class HelloWorld(Applet):
def paint(self, g):
g.drawString("Hello from Jython!",20,30)
注意する点としては、文字コードの指定をしてやらなければならないが
Shift_JISの場合は特に必要がないようだ(今回の場合は)
と言っても違うプログラムの時に文字コードを指定してもエラーはかれたのだが・・・・orz
JAVA縛りはあるようなのでファイル名をHelloWorld.pyとしておくのが無難である。
-コンパイルしてみよう
C:\jython\aple\jpywork>
jythonc --compiler "C:\Program Files\Java\jdk1.6.0_12\bin\javac"
--core --deep --jar appletdemo.jar *.py
プログラムをやっている人ならわかると思うが一行目はコンパイルしたいソースコードのあるディレクトリまでディレクトリを変えてある。
2行目の
--conpiler "C:\Program Files\Java\jdk1.6.0_12\bin\javac"
の部分はJavaが複数入ってない限りは多分大丈夫だと思うがこれはjavacのある位置を指定してやっているだけである。ので、--conpiler~\javac"の部分は無くてもいい人と無いとだめな人がいる。
3行目以下全てはAppletを使うプログラムでは必須のようだ。
--jar appletdemo.jar
というのは、特に任意の名前をつければいいので--jar aaaaaaa.jarなどでも大丈夫である。
最後の*.pyはそのディレクトリにある全てのpyファイルをコンパイルしてしまうので複数ある場合は指定してやるのも手である。
今回の場合だと
--core --deep --jar appletdemo.jar helloWorld.py
という感じである。
classファイルやjarファイルがjpyworkというフォルダの中にできていれば成功である。
-表示してあげよう
さて自分のプログラムがちゃんと動いているのか確認してあげるためにappletviewerで表示してあげないといけないので表示してあげよう。
JAVAのようにソースコード内にアプレットを表示するようなコードを書いてないためちょっと工夫が必要である。
前回のコンパイルしてみようと言うところでclassファイルとjarファイルができたと思う。今回はそれを使う。
まずHTMLファイルを用意しなければならないので
<html>
<head>
<title>HelloWorld</title>
</head>
<body>
<applet code="HelloWorld.class" archive="appletdemo.jar"
width="640" height="380">
</applet>
</body>
</html>
タイトルタグのところとファイル名は適当でいいが日本語は不可である。保存場所はjpyworkの中である。コンパイルの時は特にディレクトリ位置を指定しなかったが今回に限ってはディレクトリ位置までに日本語文字が入るとエラーをはくのでCドライブ直下などにjpyworkを移動またはコピーする。
HelloWorld.classだけではエラーを吐くので、appletdemo.jarをarchiveで指定してやればよい。
archiveで付加する理由としては、HelloWorld.classを指定するだけではJVMはクラスファイルがある場所がわからずエラーを吐くので、archive属性にappletdemo.jarを指定してやる必要がある。そしてjarにする理由としては一緒にjythonライブラリを格納させるためである。
さてでは、このファイルをappletviewerで見なければならないので、
C:\jpywork>appletviewer HelloWorld.html
とすれば良い。成功していればappletviewerが立ち上がり左上らへんに
Hello from Jython!
と表示されているはずである。
実行結果
#image(http://farm4.static.flickr.com/3563/3311250615_714f0cd976.jpg,http://www.flickr.com/photos/29863418@N06/3311250615/,blank)
*ボタンを表示させてボタンクリックのイベントをとってみる
書け
*HTTPリクエストでサーバからデータを取ってきてみる
書け
#comment()
このページへのアクセス数
total
&counter()
today
&counter(today)
yesterday
&counter(yesterday)
このページのタグ一覧
&tags_list()
表示オプション
横に並べて表示:
変化行の前後のみ表示: