怒りのJava学習 このページをアンテナに追加 RSSフィード

Java初心者が
Java学習の途中で感じた怒りを
叩きつけるブログ

 このブログでは
※コンパイルエラーの99%は入力ミスで出来ています
※コンパイルエラーの1%は故意の省略で出来ています

現在皆様のエラー例を募集中



↓このブログの執筆方針
はじめに

↓ブログランキングへのリンク

クリックでランキングのポイントが加算される
今のところどうでもいい

2009-06-12 よーしよし!

[]最終動作報告


 前回までのコメントまで含めて判明した事により、JARへのライブラリ付加の自動化は無理だと分かったので、ダブルクリックと黒窓でのコマンドライン実行での動作検証を行う。


 ダブルクリックだと、フリーズなのかエラーなのか分からないので、黒窓で実行する。

 まず、JARファイルが作られているdistフォルダに移動する。JARを実行する。

C:\Documents and Settings\java1rou\My Documents

\NetBeansProjects\MyFirstShape\dist java -jar MyFirstShape.jar

Exception in thread "main" java.lang.

IllegalArgumentException: Resource not found "resources/"

【以下省略】

これは簡単だ。セッティングの解説にあった症状だ。そして以前有った症状と同じで、NetBeans上で実行する時とJARファイルから直接実行する時で画像等のファイルを置くべき場所が異なるために起こるのだ。resourcesフォルダをdistフォルダ内にコピーしてやる。

C:\Documents and Settings\java1rou\My Documents

\NetBeansProjects\MyFirstShape\dist java -jar MyFirstShape.jar

Exception in thread "main" java.lang.

UnsatisfiedLinkError: no jogl in java.library.path

 うむ、これもかつてNetBeans上で発生したエラーだな。java.library.pathにネイティブライブラリを設定すればいいのだ・・・どうやって?

 5月29日のたけチン氏のコメントに

環境変数「libs.xith3d.natives.classpath」が未定義なら、直接的に書いてらどうでしょうか?

Djava.library.path="C:\usr\lib\xith3d\native"

とあった、ので、環境変数をそのように追加してやろうかと思ったのだが、Windows環境変数(スタート→マイコンピューターを右クリック→プロパティ→詳細設定タブ→環境変数)のPathは

%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;c:\tex\bin;C:\gs\gs8.61\bin;C:\gs\gs8.61\lib;C:\Program Files\Java\jdk1.6.0_07\bin;C:\Program Files\QuickTime\QTSystem\

といった感じで書かれていて、とてもたけチン氏のコメントのような書式ではない。ユーザーの環境変数もそうだ。「java.library.path」でググってみても設定を解説したそれらしいページがヒットしない。どういうことなのだろう?

 しかしここでハタと気がついた。環境変数をいじるって事は逆に言えば、それをしなければ動かない配布物を作ってしまうという事だ。それはイカン。なるべく基本的なJRE(Java環境プログラム=VM=バーチャルマシンのこと)のみで動く配布物でなければならない。と言う訳で、環境変数いじりは早々にあきらめて、ネイティブライブラリをdistフォルダにコピーしよう。

 まずは要求されているjoglのライブラリを持ってくる。設定ページの図にあった、\third-party\jogl\windows-i586\の場所にあるファイルを全てdistフォルダにコピーして、黒窓で実行してみる。

f:id:java1rou:20090612213856p:image

うむ!成功!×ボタンを押しても終了しない所もNetBeansでの実行と同じだ。他のネイティブライブラリは使われなかったのだろう。だが、他のプロジェクトでは必要になるかもしれない。

 なお、distフォルダの中にはlibフォルダがあり、ここにはプロジェクトに追加されたJARライブラリが収められている。もしかしてここにネイティブライブラリを放り込んでもうまく行くのでないか?と思って試してみた。メインクラスのあるフォルダはスッキリさせたいからね。

 しかし失敗。joglが無いというエラーが出た。どうも同じライブラリとは言っても扱いが異なるらしい。何とかならないものか。まあ何にせよ、NetBeans無しでも動かせるとは分かった。


 さあ、これで実験の環境は整った。あとはXith3Dの言語仕様を覚えて、レイヤー内に3D表示をさせられるか検証するのみだ。そしてうまく行けばXith3Dでゲーム開発を開始することになる。

 Xith3Dのホームページに3DRPGや、戦艦を操るゲームがサンプルとして置かれていたので、それらを参考にすれば大幅に開発期間を短縮できるはずだ。これは非常に嬉しい。


 少々疑問は残るが、うまく行ったので怒らないで終わる。

2009-06-07 いまだ謎は残るわけだが

[][]jarが無い!


 さて、昨日なぜjarファイルへの操作の途中で実験せず「つづく」としたかと言えば、

jarが無い!

 からに他ならない。

 あれ〜?コンパイルしたら自動的にjarファイルがプロジェクトフォルダ直下のdistフォルダに入ってるんじゃないのか?jarどころかdistファルダすら見当たらないんだけど・・・。おっかしいなぁ。以前(NetBeans6.0.1)は何もしなくてもjarファイルが生成されていたのに・・・。NetBeans6.5だと仕様が変わったのかなぁ?


 NetBeansのヘルプで「jar」を検索っと・・・。

JAR ファイルの構築

では、「構築」コマンドまたは「生成物を削除して構築」コマンドを実行するたびに、IDE はプロジェクトのソースから JAR ファイルを構築します。JAR ファイルは、プロジェクトフォルダの dist ディレクトリに生成されます。

ええ〜!?じゃあ実行してみよう。・・・やっぱりdist無いよ!

(上のつづき)

「構築」コマンドは、プロジェクトの「保存時にコンパイル」コマンドが有効な場合には無効になります。ファイルの保存時にファイルはコンパイルされますが、JAR ファイルはクラスファイルの新しいバージョンを使用して再パッケージ化されません。プロジェクト全体の生成物を削除して構築せずに JAR ファイルを再構築できるようにする場合、プロジェクトの「保存時にコンパイル」を無効にし、「構築」コマンドを使用します。

ほほう、そうだったのか。しかしこれおかしくないか?保存時にコンパイルするか否かとjarファイルにパッケージ化するかどうかは別の事じゃないか?とにかく早速無効にしてみよう。・・・やっぱりdist無いよ!

 おかしいなぁ・・・最近はいつも「ファイルを実行」ボタンで実行してたからかなぁ?じゃあ、「主プロジェクトを構築」してみるか。(「主プロジェクトを実行」では出ません。)

 おお!出たっ!


 ・・・これおかしくないか?「ファイルを実行」もコンパイル(つまり構築)してから実行してるはずだよな?じゃあ「構築」するのとおんなじだと思うんだが。・・・いや、いつも使ってるボタンはフォーカスが合ってるファイルのみを単独実行っていうボタンだからプロジェクト全体のコンパイルはしてないんだよな。(以前似たような事があったような。)なるほど”プロジェクト”を対象にしないと駄目なんだな。


 さて、問題は、jarファイルを作る時のネイティブライブラリの付け加え方なのだが・・・まさか、</project>の直前に「TODO」を加えてもうまく行くとは思えない。(試しました。「主プロジェクトを実行」すら出来なくなりました。)

 では何を加えればいいのだろうか?


 というところで本日は寝る。

----------------------------------------------

6月12日追記

 何を加えればよいかについては、6月4日のたけチンさんのコメントによって

「単純に書きかけのテキストなので、この部分を完成させよという意味で「TODO」というコメントを付けている」

という衝撃の事実が判明。よってXMLの知識がない俺には現時点では自動化処理は不可能ということが分かった。手動で頑張りましょう。

2009-06-04 とりあえず訳は終わったけど・・・

[]セッティング完訳


 二度も同じ理由で詰まったので、ほとほと懲りた。だから残りの説明文も横着せずに全て訳すことにした。


 ネイティブライブラリjoglが無いというエラーの処理の続きから。

This time if you try to run this code you will get an Error like this:

Exception in thread 'main' java.lang.IllegalArgumentException: Resource not found 'resources/'

But this error is much clearer - just examine the source: we want to display a textured cube with a texture named "stone.png". Xith3D uses Texture(Stream)Locators to find textures in the global context of the application, so in line 70 we set up the global resources to reside in the directory "resources/, which should contain a "textures" folder to hold the globally available textures. To correct the project, switch to the "Files" panel, add a "resources" folder to your project and create a "textures" folder inside. Populate this folder with a "stone.png" image. If you don't have one, you can download this:

【figure】

Stone Texture

--------------------------------------------------

今度は、あなたがこのコードを走らせようとするならば、あなたはこのようにErrorを得ます:

Exception in thread 'main' java.lang.IllegalArgumentException: Resource not found 'resources/'

しかし、このエラーは、非常により明白です - ちょっとソースを調べてください:我々は、「stone.png」という名前をつけたテクスチャーできめのある立方体を示したいです。Xith3Dはアプリケーション世界的な前後関係グローバルコンテキストでテクスチャーを発見するためにTexture(Stream)Locatorsを使うので、第70行において、我々はディレクトリ「resources/」に住むため存在するように世界的な資源グローバルリソース組み立て設定しました。『このディレクトリは』グローバルに利用できるテクスチャーを持つために「テクスチャー」フォルダを含まなければならない。プロジェクトを修正するために、「ファイル」パネルに変わって切り替えて、「資源」フォルダをあなたのプロジェクトに加えて、「テクスチャー」フォルダを中で作製してください。「stone.png」イメージを持ったこのフォルダに住んでを装着して下さい。あなたが1それを持たないならば、あなたはこれをダウンロードすることができます:

【図は省略】

石のテクスチャー

 グローバル・コンテキストとはここを読めば分かるが、

コンテキストは, 簡単に言えば変数関数の名前とその実体(オブジェクト)を関連付けた「表」である. コンテキストはスタック構造になっており(コンテキスト・スタック), コンテキストが作成されるとのスタックに順に上からプッシュされ, 破棄されるときはスタックの上から順に破棄される.

【中略】

インタープリターが起動したときに, 自動的にグローバル・コンテキストが作成される. グローバル・コンテキストはコンテキスト・スタックの最下部に常に存在し

【後略】

 なるほど。そしてまた、変数関数の他に今どのクラス・メソッドに居るかを表すものなのだろう。グラフィックコンテキストも似たような概念だと思われる。というかこの説明読んで初めてグラフィックコンテキストの意味が分かったよ。・・・こういう概念はもっと初心者の内に教えて欲しいなぁ。ん?この情報「CueMol」ってソフトのマニュアルかよ!Java技術者は何やってんだ!?「Java コンテキストとは」でググったら

コンテキストとは、プログラムの実行に必要な各種情報のことである。


「context」(コンテキスト)は、「文脈」、「前後関係」などと訳されるが、IT用語としては意味がイメージしづらく、単にコンテキストとある場合は、何らかの制御情報と考える方がわかりやすいことが多い。


コンテキストは、コンテキストメニューやコンテキストスイッチなど、複合語として使用されることが多い。コンテキストメニューとは、操作の場面に応じてメニューを表示することである。また、コンテキストスイッチとは、CPUレジスタの情報をコンテキストとして保持して、プログラムの実行に応じてコンテキストを切り替えることである。

 などと、自分で「意味がイメージしづらく」とかぬかしやがって!そんな用語(グラフィックコンテキスト)を初心者向けの本に何の説明もなく使うんじゃねーよ、参考書どもめ!!(どのくらいひどい有様かは2007年6月13日の記事を見てくれ!)


 しかし最近やっと、この辺のおかしな状況を認識する人も現れてきたようで

JAVA技術の処方箋、毎日プログラミングテクニック

2008/05/01 JAVA技術の処方箋10回目:コンテキストって何だ?

初心者は、コンテキストってなんだ?!

って言いたくなりますよね。ほんと。


全くこういう言葉がいきなり出てくるから、

つまづく人が多い。


いいでしょう。サーチマンがわかりやすく説明しておきましょう。

という記事が出てたりする。しかしその説明は

Tomcatで管理される一まとまりのディレクトリのことです。

などと、ひどくローカルな話に落ち込んでしまっていて、IT技術者の視野の狭さをまざまざと見せつけてくれる好例になっているというオチが付いているのだが。(TomcatとはJakartaプロジェクトのサブプロジェクトとして開発されているオープンソースソフトウェアで、JavaサーブレットJSPを処理するアプリケーションサーバのこと。つまりサーバープログラムという非常にローカルな話題に限定された答えになっている。)このメルマガサーバー技術者を対象にしているのだとしても、なんという近視眼。グラフィクスコンテキストもstaticコンテキストも視野に入っていない。




 すまん、脱線した。訳の続きに戻る。

Now you should be ready to go and if everything went well, you should see a window similar to this:

【figure】

My First Shape



Generating a distribution


Since Xith3d needs native libraries, you can't simply double click on the generated jar like you normally would do. To overcome these shortcumming, you have to copy the natives to the dist-folder and start the application with the "java.libraries.path" property set. To save you from this tedious work, just switch to the "Files" tab in your project explorer, look for the "build.xml" and open it. Now copy the following target right into this file, just before the closing </project> tag.

TODO

Hope you enjoyed this article and also have "Your First Shape" up and running!


Have Fun!

--------------------------------------------------------

現在、あなたは行くことができるはずです、そして、すべてがうまくいくならば、あなたはウインドウがこれと類似しているのを見なければなりません見るべきだ:


My First Shape



配布『物』を引き起こす生成すること


Xith3dがネイティブライブラリを必要とするので、あなたが通常するだろうように、あなたが単に発生するされたジャーjarファイルをダブルクリックすることができなくては出来ない。Toはこれらの欠点を克服しますするため、あなたは土地の人ネイティブ『ファイル』をdist-フォルダへコピーしなければならなくて、「java.libraries.path」の資産をセットして属性セットで、アプリケーションを始めなければなりません。あなたをこの退屈な仕事から救うために、ちょっとあなたのプロジェクト探検家エクスプローラーで「ファイル」タブに変わって切り替えて、「build.xml」を探して、それを開けてください。すぐにそうしたら、ちょっと/プロジェクト</project>タグを閉鎖閉じる前に、このファイルに以下の目標ターゲットの右(ここだけ意味不明)をコピーしてください。

ToDo

あなたが本稿を楽しんだことを望んで、そのうえ「My First Shape」を稼働可能にしてください!


楽しんでください!

 うーん。

 昨日のコメントで心配した通り、jarファイルを実行する時点で問題があるわけだ。方法が二つある様だが、両方ともよく分からない。


(1)distフォルダにネイティブライブラリをコピーする。java.libraries.pathのプロパティセットで。(←ここがよく分からない。)

(2)ファイルタブのbuild.xmlを開いて、</project>の直前に「ToDo」をコピーペーストする。(←これでいいのかなぁ?target rightの意味が分からないままなのだが。)


・・・つづく。

2009-06-03 喜ぶべきか嘆くべきか

[]セッティング完了


 結論から言うと、セッティングは完了、サンプルコードは3D表示を成功させた。

 以下にその顛末を述べる。




たけチン 『Djava.library.path="${libs.xith3d.natives.classpath}" は、NativeLibの場所を指定しているので、関連するDLLやSOのある場所を設定する必要があります。環境変数「libs.xith3d.natives.classpath」が未定義なら、直接的に書いてらどうでしょうか?

Djava.library.path="C:\usr\lib\xith3d\native"』(2009/06/01 11:34)

・・・NativeLibって何?


 と言う所で昨日は寝た訳だが、Libはライブラリだろうから「ネイティブライブラリとは」で早速ググってみる。

 ・・・が、30件見出しを見ても「ネイティブライブラリとは」という言い回しをしているページが無い。「ネイティブライブラリ」を使っているページはたくさんHITしたが、どれもこれも「ネイティブライブラリ」を既に定義済みの言葉として使っているようだった。ということは、「ネイティブ」という用語にIT的な意味があることをみんな知っている可能性がある。

 そこで研究室のJavaの初心者本を片っ端から見てみたが、そもそも索引に「native」も「ネイティブ」も載っていないものがほとんどだった。かろうじて”逆引き速引きリファレンスJava(2003年アスキー)”にメソッドの修飾詞として一行

nathive:Cなど他のプラットフォームに依存して実装されている

とあったが、いまいち理解できない。そこで「Java ネイティブとは」でググってみた。1・2件目はネイティブスピーカーの話だったが、3件目にそれらしい記事が

ms-help://MS.VSExpressCC.v80/MS.NETFramework.v20.ja/dv_vcmcpp/html/b200cfd1-0440-498f-90ee-7ecf92492dc0.htm

方法 : ネイティブC++ プログラムコマンドラインからコンパイルする

・・・にあるC++プログラムで、次に示すものは”ネイティブC++ プログラム”と書かれていますが、

ここで”ネイティブC++プログラム”とはどういう意味ですか?

【後略】

 ふむふむ、似たような悩みだな!そして、それに対する解答の中にひときわ分かりやすいものがあった。

渋木宏明

ここで言う「ネイティブ」は、「実行形式ファイルを OS がメモリに読み込み、CPU が直接的に解釈・実行を行う」スタイルを指しています。


ネイティブ〜」は、このスタイルに対応した事物を指し示す場合の枕詞になっています。


古来、このスタイルが主流であり、これらの実行環境や方式をあえて「ネイティブ」と呼ぶことはありませんでした。


しかしながら近年、Java .NET のような、OS とは異なる層でアプリケーションプログラムの解釈・実行を行う「仮想実行環境」が登場し、混乱を避ける意味からも、両者を区別する語が必要となる場面がチラホラ見られはじめました。


そこで、特に Microsoft 社では、.NET の仮想実行環境(=.NET ランタイム = CLR)の管理下でプログラム実行を行うスタイルを「マネージ(ド)」と呼び、旧来の OS/CPU 手動でプログラム実行するスタイルを「ネイティブ」と呼ぶことにしたようです。

 おおーなるほど分かりやすい。さすがMVP!つまりJavaのようなインタプリタ向けのclassファイルじゃなくて、OSを本来動かしているマシン語の実行ファイル(exeとかdllとか?)のことをネイティブというんだね。それなら、上の修飾詞の説明もうなずける。つまりネイティブライブラリは、OS側にもともとあるマシン語のファイルか、もしくはOS向けに作られた非classファイル(つまりマシン語)のことを言うんだね。


 ・・・うーん。

 やっぱり分からないなぁ。どっちにせよネイティブライブラリがどこにあるか分からないから、直接であろうと間接であろうとパスを指定できないよ。

 うーん。

 うーん。


 そこに私の隣に座っている友人が登場。

「プロジェクトのライブラリにXith3D登録した?」

「プロジェクトのプロパティライブラリ→実行時ライブラリにXith3D登録した?」

 やったよー。セッティングページの指示通りにね。

「どれどれ見せて。」

 ほら、新しいプロジェクトを準備してるだろ?で、次にorg.myorg.myfirstshape.Mainって名前をつけて、依存性を指定するためにライブラリに以下のリストを加える、と。そうそう、この相対パスにするって部分がダイアログに出て来ないんで絶対パスで設定しちゃったけど大丈夫だよね。


・・・あれ?その下の部分訳した覚えがないな・・・。

Since Xith3D uses native OpenGL calls to perform its rendering, we will also need to reference the native libraries somewhere. Unfortunately Netbeans has no support for native libraries in its project settings, so we need to abuse the Library feature a bit. Just create another Library called "xith3d.natives" and locate the folders containing the native libraries for your platform. On the right screenshot you see the configuration for a win32 system.

If you have sucessfully created the two libraries, select the "xith3d" library and click [Add Library] to apply the dependency to your project. Don't add the "xith3d.natives" library, since we will abuse this configuration later :)

------------------------------------------------

Xith3Dがその翻訳レンダリングを実行するという時に自国のネイティブOpenGL要求コールを使うので、我々は自国ネイティブ蔵書をどこかで参照文に引用する必要もあります。残念なことに、Netbeansはそのプロジェクトセッティングでネイティブライブラリに対する支持サポートをしないので、我々は少し図書館機能を濫用する必要があります。ちょっと「xith3d.natives」と呼ばれているもう一つの図書館をつくって、あなたのプラットホームのためにネイティブライブラリを含んでいるフォルダを見つけてください。正常な右の画面ショットの上で、あなたはwin32システムについて構成を参照し見ます。

あなたが2つの図書館をsucessfullyにつくったならば、「xith3d」図書館を選んで、属国関係性をあなたのプロジェクトに適用するために、クリックしてください[図書館を加えます]。我々が後でこの構成を悪用する時からので、「xith3d.natives」図書館を加えないでください:)

 なにぃぃぃぃぃい!?ちゃんとネイティブライブラリについて書いてあるじゃないか!

 読み飛ばしてた・・・|||orz|||ズドーン


 で、指示通りツール→ライブラリ→クラスライブラリ→新規ライブラリ→xith3d.nativesと名前を付けて、スクリーンショットにあるパスを参考にxith3dライブラリに登録したjarファイルのあるフォルダの近辺を捜して、3つのdllファイルを登録した。


 で、早速サンプルコードを実行してみた。


 ・・・成功!






 成功しちゃったよ!!orz


 つまり・・・


 結局俺のミスかっ!


 ちくしょう!このやり場のない怒りをどうすればいいのだ!


 うぉぉ〜〜!俺の空回りする怒りは



秒速60回転だぁ〜〜!!


.......´´○``..../
´.....(ヽュ'.........シャカシャカシャシャカシャカシャカシャシャカ
▲◎ノ◎▲.\ _____________________________________[ただ今の発電量9W]




 また同じパターンで解決してしまった・・・。とほほ。

2009-06-02 急がば回れってことなのかなぁ?

[]結局全訳


 前回の流れを見ると、セッティングの解説ページをよく読むと進んでいる。ということは、拾い読みではなくちゃんと全文を訳してやらねば駄目なのではないか?と思って、訳してみた。この間(5月28日)は、

SVNのチェック方法

SVNリポジトリをチェックするとワークスペースに"Xith3D"と"Xith-tk"という名前のプロジェクトが自動的に作られる。(ソースを見るためにはNetBeansのバージョニングという機能を使うらしいが今の所どうでもいい。)

まず"Xith3D"ですべきことは、"https://xith3d.svn.sourceforge.net/svnroot/xith3d" を "RepositoryURL"として登録する。"User"、"Password"、"Save..."オプションは空、[Next](次へ)を押したら、・・・

 までだったのでその続きから。


 しかしYAHOO翻訳は実にバカだな。でも使っちゃうけど。


Clean the "Password" field too and uncheck the "Save..." opition if necessary. After clicking on [Next] we are presented with the form to specify the local target folder, where the sources will reside.

--------------------------------------------

パスワード」フィールドもきれいにして、必要に応じて「セーブ」opitionのチェックをはずしてください...。[次へ]をクリックした後に、我々はローカル目標フォルダを指定するために書式を提示されます、そこ(ローカルフォルダ)に、関係者(訳注:ソース)は住み(訳注:存在し)ます。

Enter "trunk" in the "Reporitory Folder" field and choose the target location in the "Local Folder" field. Make sure you have "xith3d" appended there to not flood your projects directory. Check the "Skip 'trunk' ..." and "Scan for Netbeans Projects ..." options and hit [Finish]. IMPORTANT: double check, that you have enabled the "Skip 'trunk' and checkout only its content"-option. Otherwise the "xith-tk" project will not find the core library later.

--------------------------------------------

「Reporitoryフォルダ」フィールドに「トランク」を入力して、「ローカルフォルダ」フィールドで目標場所を選んでください。「xith3d」をあなたのプロジェクトディレクトリを洪水に『しないために』そこで追加したか、確認して下さい。「『トランク』をスキップする...」、そして「Netbeans Projectsのための走査...」オプション、をチェックしてください、そして[完了]と打たれた。重要:あなたが「『トランク』をスキップと、その内容だけをチェックアウト」-オプションを可能にした『か、』再確認。さもなければ、「第xiのtk」プロジェクトは、後で中心的な図書館を見つけません。

Now Netbeans will copy the sources from the SVN server. You can watch the progress in the Output panel. Don't hold your breath, this will take a while. When finished, the IDE will present you with the notifier you see to the left. Just hit [Open Project] and this step is done.

--------------------------------------------

現在(訳注:さあこれで)、Netbeansは源(訳注:ソース)をSVNサーバーからコピーします。あなたは、Outputパネルにおける進歩を見ることができます。息を殺さないで(訳注:あまり期待しないで)ください、これに間がかかります。終わるとき、IDEはあなたが左に見る通知であなたを紹介します。ちょっと(訳注:つべこべ言わずに)[Projectを開けます]を打ってください、そして、このステップはされます。

The next thing we need to do is to repeat the steps to checkout "xith-tk" by connecting to the repository "https://xith-tk.svn.sourceforge.net/svnroot/xith-tk" and using a folder named "xith-tk" right besides the already checked out "xith3d" project on the same directory level. Specify "trunk" as well for "Repository Folder" and make sure the "Local Folder" ends with "xith-tk". Again double check you enabled the "Skip 'trunk' option". After finishing the download, you will again be presented with the "Open Project" message.

--------------------------------------------

我々がする必要がある次のことは貯蔵所(訳注:リポジトリ)「https://xith-tk.svn.sourceforge.net/svnroot/xith-tk」につながることによって「第xiのtk」に対するチェックアウトするステップを繰り返すこと、そして、同じディレクトリレベル上ですでにチェックされた「xith3d」外へ突出します(訳注:プロジェクト)のすぐ横で、「第xiのtk」という名前をつけられたフォルダを使用することです。「貯蔵所フォルダ」のために『したのと』同様に「トランク」を指定して、「ローカルフォルダ」が「第xiのtk」で終わることを確認してください。あなたが「『トランク』をスキップするオプション」ことを可能にしたことをまた二倍に確認(訳注:ダブルチェック)してください。ダウンロードを終えた後に、あなたは「Projectを開ける」というメッセージを再び贈られます。

The last thing you have to do is to run a specific ant target that creates a distribution file set you can use for your project. Go to the "Files" tab and expand the "xith-tk" explorer node. You will see folders like "src" and "test-resource" and the "build.xml" file. Just select this one so the "Navigator" panel shows the available targets. Search for the target named "default" (it should be bold) and run it.

The build process will take a while and will present you with some (javadoc-) warnings. Just ignore them as long as you get "BUILD SUCESSFULL" in the end

--------------------------------------------

あなたがしなければならない最新流行(訳注:最後の事)は、あなたがあなたのプロジェクトのために使うことができる配布ファイルセットを作製する特定のアリ(訳注:Ant = 一連の処理を自動化するためのツール)目標を走らせることになっています。「ファイル」タブへ行って、「第xiのtk」探検家(訳注:エクスプローラー)ノードを拡大してください。あなたは、フォルダが「src」と「テスト-資源」と「build.xml」ファイルを好むの(訳注:のようなファイル)を見ます。「ナビゲーター」パネルが利用できる目標を示すように、ちょっとこれを選んでください。「デフォルト」(それは大胆でなければなりません)という名前をつけられた目標を捜して、それを走らせてください。


造り(訳注:ビルドプロセスに間がかかって、あなたにいくらかの(javadoc-)警告を示します。あなたが結局は「BUILD SUCESSFULL」を得る限り、ちょっと彼らを無視してください

ここまで、SVNの設定。今の所読む必要はないが、ダウンロード方式がダメだったら切り替える時に必要だから無駄ではないかも知れない。

ああそして、ここから下の文は読む必要があったな。

Setting up a new project

Now you have a distribution file set downloaded or created yourself from SVN, you can create your first Xith3D gem: a textured Cube Cool

Start up the "New Project" wizard and create a Java Application named "MyFirstShape". Specify "org.myorg.myfirstshape.Main" or whatever you like in "Create Main Class" and check the "Use dedicated Folder for storing libraries" option if not already checked. Hit [Finish]

--------------------------------------------

新しいプロジェクトを準備すること

あなたが配布ファイルをダウンロードされてセットしておくか、SVNからあなた自身をつくった今、あなたはあなたの最初のXith3D宝石をつくることができます:きめのある(訳注:テクスチャーのある)Cube(キューブ)

「新しいProject」ウィザードを始めて、「MyFirstShape」という名前をつけられるJava Applicationをつくってください。「org.myorg.myfirstshape.Main」を、さもなければ、あなたが「Main Classをつくります」の中で好きであるものは何でも、指定してください。そしてチェックは、「図書館を保存するために、専用のフォルダを使う」ことが、もしすでにチェックしましたでなければオプションをつける。打たれます[完了]

 ここから以下は昨日訳した。訳したところからさらに下にもまだ文が残っているが、とりあえず無視する。


 で、新しいProjectで「org.myorg.myfirstshape.Main」を試してみたがダメだった。おんなじエラーが出る。

no jogl in java.library.path

だ。どういうことなの?|||orz|||


 と、絶望した時にたけチン氏から救いの手が5月29日のコメントに!!

たけチン 『Djava.library.path="${libs.xith3d.natives.classpath}" は、NativeLibの場所を指定しているので、関連するDLLやSOのある場所を設定する必要があります。環境変数「libs.xith3d.natives.classpath」が未定義なら、直接的に書いてらどうでしょうか?

Djava.library.path="C:\usr\lib\xith3d\native"』(2009/06/01 11:34)


 ・


 ・・


 ・・・


 「NativeLib」って・・・何?


 ・・・(つづく)