Javaアプレットのゲームの限界は!
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
01/11/08 23:35ID:kmeAWDumなんか凄いの作れないの?
もう携帯だけの過去の遺物?
0296名前は開発中のものです。
04/01/17 02:21ID:6ai+veDuアプリケーションで作った方がいいよ。
0297名前は開発中のものです。
04/01/18 00:05ID:R2AUtvDlちょっと面白いかも。
ここってオリジナルのゲームなんでしょ?
なのに、フリーで出まわってるゲームも置いてるなんて、なんだかなぁ。
0298JAVA初心者・・・
04/01/19 04:41ID:7ZOz3AkQ今宝探しゲーム作っているのですがどなたか参考になるソースもってませんか?
目標はFF9のミニゲームだった「ここほれ!チョコボ」です。
どなたかご協力お願いします<(_ _)>
0299名前は開発中のものです。
04/01/19 15:27ID:snVCA4Saスレ立てといてなんでここで聞いてるんだよ
0300名前は開発中のものです。
04/01/21 00:26ID:j6QTKwUDhttp://www.javagameplay.com/games.html
とか。
あまり面白くはないけど、すげーなと思う。
0301名前は開発中のものです。
04/01/21 02:01ID:JJmOkv2Jhttp://www.classicgaming.com/jmsxemu/
0302名前は開発中のものです。
04/01/21 09:01ID:j6QTKwUDグラフィックスに関してはほぼ何でも出来るが、
音まわりの処理が苦しい?
0303名前は開発中のものです。
04/01/22 21:10ID:sEG1ecAb既にでてるかな?
0304名前は開発中のものです。
04/01/23 01:56ID:hxTgIGSZヘリも飛行機も操縦がムズ過ぎ。速いマシンほど速く動いてる?
もっと簡単だったら楽しいような…
じゃ、更に追加で、
http://www2.odn.ne.jp/~cdh88520/pfsa_top.html
同じサイト内だけど、
http://www2.odn.ne.jp/~cdh88520/starship_battle_shimulator_top.html
も。
下のは複雑すぎでした…
0305名前は開発中のものです。
04/01/25 01:26ID:hok/ATwAぼくは
じゃばよりふらっしゅのほうがいいんだなと
おもいました。
0306名前は開発中のものです。
04/02/10 01:23ID:roXOg29fそう思ったなら多分それが正解。
適材適所。
0307名前は開発中のものです。
04/05/12 17:29ID:+KwjynEM0308名前は開発中のものです。
04/05/15 11:19ID:atd2UrGFせっかくの書き込みなのにすまないんだが、
>>307
すまん、全然たいしたことない。
ってゆーか、ほとんど正男じゃん。
もっと凄いjavaゲームはないものか。
0309名前は開発中のものです。
04/06/07 18:19ID:KZ9AiAg40310名前は開発中のものです。
04/06/21 18:11ID:uNmG74S6ttp://java.sun.com/j2se/1.4/ja/docs/ja/guide/sound/programmer_guide/contents.html
JAVAサウンドプログラマーズガイド
0311名前は開発中のものです。
04/06/21 18:50ID:WQ1GKg6I0312名前は開発中のものです。
04/09/27 00:03:41ID:aLBna6aeJavaアプリでゲーム作ってますが、どうしても逆コンパイルかけられて
ソースを覗かれるのがいやなのです。
何か良い方法はありませんか?
0313名前は開発中のものです。
04/09/27 00:41:30ID:be/ifB4Aもしくは、すべてのクラスファイルを独自で暗号化して、
自前の複合化クラスローダー無しには読み取れなくして、
そのクラスローダーの使い方を難しく&難読化して、読めなくするとか。
以下、参考までに。
jarg - 最適化ツール
ttp://jarg.sourceforge.net/
RetroGuard配布サイト(英語) - 難読化ツール
ttp://www.retrologic.com/retroguard-main.html
RetroGuard日本語解説サイト?
ttp://mascot.mis.ous.ac.jp/horb-ous/ihorb/RetroGuardData.htm
Java無関係用語集 - 難読化について
ttp://www.netgene.co.jp/java/technicalTerms.html#Obfuscation
0314名前は開発中のものです。
04/09/27 00:42:36ID:be/ifB4A0315名前は開発中のものです。
04/09/27 07:34:52ID:aLBna6aeご親切に、ありがとです。
早速、jargで難読化したり、jodeで逆コンパイルして確かめてみたり
してみました。
・・ん〜、簡単に覗けてしまいました。
根本的な解決方法としては、
>すべてのクラスファイルを独自で暗号化して、
>自前の複合化クラスローダー無しには読み取れなくして、
>そのクラスローダーの使い方を難しく&難読化して、読めなくする
かもしれません。是非、もう少し掘り下げて教えていただきたいです。
0316名前は開発中のものです。
04/09/27 07:51:00ID:MzHevRDp0317名前は開発中のものです。
04/09/27 19:28:31ID:n84gmfqBjarg で最適化すれば、それなりに読みにくくなっているはず。
難読化ツールは、逆コンパイルを不可能にするんじゃなくて、
逆コンパイルされても、読みにくくて解読したくなくなるように出来るって事。
昨日言い忘れてたけど、jmangle って難読化ツールもある。 結構、サクッと使えていい感じ。
Jmangle 配布サイト
ttp://www.elegant-software.com/software/jmangle/
> 根本的な解決方法としては、
> > すべてのクラスファイルを独自で暗号化して、
> > 自前の複合化クラスローダー無しには読み取れなくして、
> > そのクラスローダーの使い方を難しく&難読化して、読めなくする
> かもしれません。是非、もう少し掘り下げて教えていただきたいです。
この説明で分からないなら、ちょっと解説に時間がかかりそうだが・・・どうするか・・・
まぁ、自分も近いうちに、これをやってみようと思ってたから、まとめてみるかも。
つーか、マルチ('A`)イクナイ
0318名前は開発中のものです。
04/09/30 22:22:50ID:oihGIM+f0319名前は開発中のものです。
04/09/30 22:36:30ID:SJALzkxFどうせ、作るつもりないだろうけど。
0320名前は開発中のものです。
04/10/02 13:58:02ID:mB8JJc6Y>>http://pc5.2ch.net/test/read.cgi/tech/1060340560/152
032125
04/10/03 01:54:29ID:clInMJltJNIか。
確かに手っ取り早いかもしれないけど、ネイティブ 絡むとマンドクセ。
>>315
見てるかどうか知らないけど、まとめてみた。
ttp://potage.s58.xrea.com/wiki/wiki.cgi?page=CipherClassLoader
とりあえず脳内にあるのをメモっただけだから意味不明かもしれないが、まったり考えていく予定。
実際に作るかどうかは分からん。
0322名前は開発中のものです。
04/10/03 01:58:11ID:clInMJlt名前が…
0323315
04/10/03 12:02:03ID:drsRfI5F毎日拝見しております・・。
321さんのHP覗いてみたのですが、インスタンスをClassクラスで生成する際の問題は、
newInstanceメソッドで引数なしでnewした後、初期化処理を行うメソッドを呼び出すようにすれば良いかと。
それとも、別のクラスにコンストラクタの引数に渡したいオブジェクトをsetterメソッドで登録しておけば、
引数なしのコンストラクタ内でその値をgetterメソッドで取り出すルールを
設ければうまくいくのではないでしょうか?
暗号化する・しないはクラス設計時に判断しないと無理ですけど。
出来れば、呼び出す側で暗号化ロジックを通す通さないで、ハンドリングできれば
便利で良いのですが。
クラスの直列化や複製もインタフェースをあらかじめ実装しないと
例外が発生するから別に当たり前の実装方法かも。
0324315
04/10/03 12:32:06ID:drsRfI5F内部クラスもクラスファイルをロードしないと無理です。
0325321
04/10/03 13:53:25ID:aFzOfy+1暗号化したいクラス(以下A)のメソッドを定義したインターフェイス(以下AI)を用意して、
A をシリアライズでファイルに書き出して、その時暗号化しとく。
んで、読み込み時に AI にキャストすればソースに手を加えなくても、
なんとかなりそうな気がする。
0326321
04/10/03 14:37:14ID:t6nSKj1T本質的なコンストラクタの呼び出しの問題は全く解決してないですね^^;
> newInstanceメソッドで引数なしでnewした後、初期化処理を行うメソッドを呼び出すようにすれば良いかと。
コンストラクタでしか呼べないモノの問題が出てくるのではないでしょうか?(super とか。)
> それとも、別のクラスにコンストラクタの引数に渡したいオブジェクトをsetterメソッドで登録しておけば、
> 引数なしのコンストラクタ内でその値をgetterメソッドで取り出すルールを
> 設ければうまくいくのではないでしょうか?
これなら、いけそうな気がしなくもないですね。
いろいろと面倒な感じになりそうですが、現実的かと。
> 出来れば、呼び出す側で暗号化ロジックを通す通さないで、ハンドリングできれば
> 便利で良いのですが。
暗号化したクラスも、暗号化していないクラスも同じように呼べるって事でしょうか?
> クラスの直列化や複製もインタフェースをあらかじめ実装しないと
> 例外が発生するから別に当たり前の実装方法かも。
頭悪いのでよく理解できません(;´д`)
申し訳ない。
> 内部クラスもクラスファイルをロードしないと無理です。
やはりそうですか・・・
ってか最初、マルチやってたので、ぶっちゃけ見くびってましたが
意外に実力のある方のようでつね。 ごめんなさい&内定ください。(何
0327315
04/10/03 16:44:18ID:Ab3yDh7p> クラスの直列化や複製もインタフェースをあらかじめ実装しないと
> 例外が発生するから別に当たり前の実装方法かも。
説明へたくそですみません。
クラスをシリアライズする時、Serializableインタフェースが実装していないと
NotSerializableException例外が発生。
複製するときも、Cloneableインタフェースを実装していないと、
CloneNotSupportedException例外が発生。
なので、暗号化させたいクラスにも暗号化に必要なメソッドや変数を定義してある
暗号化インタフェースを実装していないと
"暗号化インタフェースが見つからない"例外を発生させて、
コンパイル時に開発者に警告をうながす事も使いづらいの反面
合理的なのかなと思ったわけです。
0328321
04/10/03 18:19:21ID:l36e1OTnなるほどなるほど。そういう意味でしたか ^^;
しかし、そうなると疑問なのは、実装どうなるのかなぁ?と。
自分の中では、
・クラスファイルをデコンパイルさせたくないぜ。
・専用クラスローダーでしか読めなくすればいい。
・コンストラクタの呼び方が面倒になっちゃった。
・暗号化対応ソース自動変換ツールで、暗号化を意識しなくても大丈夫なシステムを!
・自動置き換えの、置き換え方を考えるぞ〜
って流れなので。
暗号化インターフェイスで暗号化を制御するとなると、実装はどうなるんだろう?って思うわけです。
暗号化インターフェイスを実装していたら、暗号化する?
暗号化するのは誰?
com.sun.tools.javac.main.Main を使って自力で暗号化コンパイラを作る?
みたいな。
0329名前は開発中のものです。
04/10/05 00:20:10ID:vzG1Y+swその前に一つ問題があるのですが、独自で実装したクラスが独自で実装した
インタフェースをimplementsしていた場合、どうやってクラスオブジェクトを
ClassLoaderから取得できるのでしょうか?
インタフェースだけならClassオブジェクトを取得出来るのですが、
インタフェースを実装したクラスの場合では、NoClassDefFoundError例外が発生します。
0330名前は開発中のものです。
04/10/05 01:03:07ID:2w/Bi/QRクライアントから持っていかれて逆コンパイルされるんだよね?
0331名前は開発中のものです。
04/10/05 01:07:54ID:vzG1Y+swなので、逆コンパイルできないネイティブコードでClassLoaderクラスを
独自実装するか、それとも、逆コンパイルされても解読が難しくなるように
ソースを難読化するかのどちらかに分かれて検討しているところです。
0332名前は開発中のものです。
04/10/05 12:43:28ID:pyJtAE+Yアプレットならデフォだとセキュリティでひっかかるんじゃないの?
署名したりインストールの手間とか考えると
普通にアプリケーションベースでネット経由でJNIをまぜつつ
ダイナミックにクラスをロードするほうが便利な気がするんだが
0333名前は開発中のものです。
04/10/05 13:06:55ID:J9uCsa2uその独自クラスローダを勝手に呼び出されたら
それで終わりだと思うんだけど。
結局ユーザ側で実行できるってことは
どっかで普通のバイトコードに落ちるんでしょ?
それを読む方法が何かしらあるわけで
0334321
04/10/05 14:53:07ID:UnlMJM9lすみません。今のところ全て机上論なので実際のところは分かりません。
今から実際にソース書いて実験します(´д`;)
>>333
独自クラスローダーのインスタンスの作成の仕方を難読化すればいいと考えています。
沢山の偽者コードの中に本物を一つ書いてスパゲッティーにしたり、
さらに難読化ツールでメソッド名なんかを変えると、読めなくなると思います。
また、ダミークラスローダーなんかも、いくつか作れば、どれが本物なのか分からず
解読を諦めるのではないでしょうか?
藁の中から針を探す難しさだと思います。
アプリケーションの中身とは全く違う部分で労力をかけますが ^^;
0335333
04/10/05 15:45:56ID:J9uCsa2uいや、同じことだと思うよ
ClassLoader#(String,byte[],int,int)に
ブレークポイント張ってデバッガで実行されたら
アウトなんじゃないの?
0336321
04/10/05 16:37:25ID:oJqqTbhCそうっすね…少々焦点が狭かったか…
あと、
new Exception().printStackTrace();
とか、コードに埋め込まれたら
処理の流れが分かるって事も、今思い出しますた。
工夫しても解読されるのは時間の問題か…
モウダメポ('A`)
0337321
04/10/05 16:51:04ID:oJqqTbhCうーん。サーバーが常に動いてないとダメだけど。
0338名前は開発中のものです。
04/10/05 17:00:29ID:pyJtAE+Y0339321
04/10/05 17:43:10ID:oJqqTbhC0340名前は開発中のものです。
04/10/05 18:28:28ID:pyJtAE+Yこのスレの名前をいってみろ
0341321
04/10/05 18:37:44ID:oJqqTbhC0342名前は開発中のものです。
04/10/05 21:51:30ID:qIq4WQNzいきなりスレの前提からはずれとるがなw
それならJAVA使わずネイティブコードでやる方がより良さそうだし
0343名前は開発中のものです。
04/10/05 21:57:58ID:u1RKRDG30344名前は開発中のものです。
04/10/05 22:38:11ID:pyJtAE+Yそれなりに簡単にわかるぞい
あたりがつけばどんどん加速度的に分かるものだ
クラックされるくらい関心度の高いゲームが作れるかどうかのほうが重要だと思うんだがね
0345321
04/10/05 23:10:54ID:oJqqTbhC> いきなりスレの前提からはずれとるがなw
>312 で逆コンパイルを防ぎたいとのマルチ質問があり、
俺がうっかりマジレスしたのが始まりで、それからは逆コンパイルを防ぐ話題でした。
>>312 以降、アプレットの話しは一切してないっす。
人も全然いないみたいだし、問題ないか、と思って。
>>343
そりゃそうだけど・・・_| ̄|○
>>344
> クラックされるくらい関心度の高いゲームが作れるかどうかのほうが重要だと思うんだがね
ごもっとも。
どこかのスレで、
実行できるものを配るということは
暗号化したファイルと、複合化のキーを一緒にして配るようなものだから。
いくら暗号化しても防ぐのは無理。 解析されるのも時間の問題。
って読んだ希ガス。今、思い出した。
0346名前は開発中のものです。
04/10/05 23:55:58ID:2w/Bi/QR0347名前は開発中のものです。
04/10/06 22:03:14ID:dUtJtg+D先進的なアイデアなら特許取れるし。
昔なら実行時書き換えって技もあったけど、いまどき現実的でないしなぁ。
どうやって難読化しようかって考えるより、一行でもコード書いたほうが
自分のためになるんだよな。
.NET用のは結構いいのがあるようなのだが。
乱文失礼
0348名前は開発中のものです。
04/10/06 22:22:02ID:CQVHxZ5SVM依存言語だと実行時中間言語生成ってな話かねぇ。
>.NET用のは結構いいのがあるようなのだが。
確かに。
Javaな方面ではサイズ縮小だけが狙いで、本来の意味での難読化の要求が少ないのかも。
0349名前は開発中のものです。
04/10/06 22:34:27ID:WwhPAGcr0350名前は開発中のものです。
04/10/06 22:44:22ID:Em+Tmfm50351名前は開発中のものです。
04/10/06 23:04:15ID:ekr4P7LeRetroGuardか何かが、クラス名やメソッド名をaとかbにするみたいだが、
クラスサイズを犠牲にしても、a05470210303とかの方が難読化にならないかな、
と思ったが、リファクタリングで変換一発か。
0352312
04/10/07 00:34:57ID:SXGuxMIT詳細希望。ま、買えばいっか。
Javaアプレットでは無い時点で論外ですが、自分の作っている
ゲームアプリはJavaWebStartを使用しています。
なぜか、メインフレームの部分が解読不可能でした。
jodeとかmochaで試したのですが、エラー起きちゃいます。
そんな訳で当分は検討しなくてもよいかな〜と考えている所です。
勝手ながら、この件のレスはここでクローズと言うことで。
0353名前は開発中のものです。
04/10/07 01:32:11ID:WcODZ6m5MSのVMでは動くけどSunのjavapではエラーが
出るようにしてたアプレットがあったなー
たしかkomplexのデモだったと思うけど
0354名前は開発中のものです。
04/10/07 01:42:39ID:+NyIBcQo0355名前は開発中のものです。
04/10/07 02:05:51ID:7BhZIGQ/一応また次元の違う話ではある
あとメインフレームってのが独自用語か?
なんとなくわかるが
0356312
04/10/07 02:36:24ID:SXGuxMITいえいえ。jodeで試した結果では、Java1.4でclassファイルを普通に認識しました。
ですが、複数のクラスを読み込んだうち、ソースに変換するものと例外が発生するものと様々でした。
例外はjodeパッケージに含まれている独自の例外クラスでしたので、詳細は分かりません。
>>355
>webstartはアプレットとアプリケーションとあるから
WebStartってアプレットでも配布可能でしたっけ?
>メインフレームってのが独自用語か?
すいません、これは、mainメソッドを実装しているFrameクラスの継承クラス
の事を指します。
0357名前は開発中のものです。
04/10/07 11:01:50ID:7BhZIGQ/JNLPしらべてみそ
ちなみに新しいウインドウが出てブラウザから独立するので
ブラウザを終了させてもいいとかそういう感じ
もはやアプレットである利点はさほどないけど
すでにアプレットになっているやつをwebstartにするならそれなりに価値もあるのかも
あとはinsetsを気にしなくていいくらいかな
もちろんいろいろなやりとりはJNLPAPIでやるというのもかわらない
0358名前は開発中のものです。
04/10/10 11:51:36ID:RlxkQKMFwebstartを起動したときに、クライアント側にアプレットのモジュールを
DLしておき、ブラウザを自動で起動した後で、クライアントにDL
したモジュールを読み込ませるって事ですか?
単純にブラウザを起動するアプリをjnlpのAPIを使って実装し、
ブラウザ側ではアプレットを配置してあるページを表示させる
だけであるなら、webstartはあまり関係が無いような。
jnlpAPIでブラウザを起動するとき、何か利点あるのでしょうか?
0359名前は開発中のものです。
04/10/10 14:23:36ID:2gZf+UVq・ブラウザを閉じても起動したままで終了処理とか管理が楽
・JNLPAPIでローカルの資源を(デフォで警告は出るが)比較的危険のない範囲で使える
・キャッシュ処理によりアプレットのように毎回ロードしない
・細かいVMのバージョンチェックが可能
・2回目からはデスクトップやランチャーのショートカットでブラウザに関係なく起動できる
質問の意味がちょっとわからないが
URLClassLoaderを勉強するといい
これを使えばスタンドアロンのJavaアプリケーションでもバージョン管理とかが可能
これで俺はシステムたくさん組んでいる
ゲームでもjarファイルを別管理することによりゲーム本体と拡張部分を分けて管理が可能
RPGならソーサリアンとかのシステムとシナリオを分けるとかSTGだとコアと面データを分けるとか
0360名前は開発中のものです。
04/10/10 15:07:46ID:RlxkQKMF質問はwebstartって何?
では無くて、
質問はwebstartappletって何?
です。
私も、webstartで2DRPGを作っています。
0361名前は開発中のものです。
04/10/10 19:15:39ID:2gZf+UVq普通のアプレットを指定できる
利点はWebstartのAPIが使えるなど上に書いたのと同じだ
0362名前は開発中のものです。
04/10/10 19:36:52ID:7+4TU6CI0363名前は開発中のものです。
04/10/10 20:13:16ID:inJquGiH0364名前は開発中のものです。
04/10/10 20:25:04ID:RlxkQKMFクラスローダーやセキュリティマネージャがwebstartに依存されているため、
アプレットの時のようなややこしい設定プロセスを簡略化できる。
ということは、アプレットプログラム内でコンソール出力したり
すれば、webstartにログ出力されるという事か。
もし、そうだとしたら、使えるかも。
やりたいことがあるが、ちょっとセキュリティ上無理かと思っていたことが
可能になるかも・・。(独り言)
0365名前は開発中のものです。
05/02/22 18:59:11ID:KzKSqXlrだから参考にしようとソース探しても全然ない。
結局掲示板で質問房が増える。
なんだかな〜。
0366名前は開発中のものです。
2005/03/28(月) 02:49:42ID:kEg8t2iM0367367
2005/04/04(月) 01:42:44ID:29VrGWc9>>http://gbsaga.ddo.jp/netgame/dillema/cliant/Dillema.jnlp
0368名前は開発中のものです。
2005/08/02(火) 10:06:22ID:T+awd9IP0369π
2005/12/14(水) 00:42:07ID:au/IhpocLinux環境でアプレットのアニメーションを作っています。
ダブルバッファリングしているのにちらついています。
どこかの大学の講義のページでダブルバッファリングするとこうなる、っていう例を見てもちらついているようなので、LinuxとNetscapeで実行するのに何か問題があるのでしょうか?
不思議なことにアプレットビューワの上でマウスを動かし続けていると非常になめらかに動き続けます。
カーソルを止めるとまた、たまにカクッカクッと止まります。
なんなんでしょう?アプレットビューワの上でカーソルを動かしてる間はなめらかってのは…。
0370名前は開発中のものです。
2005/12/14(水) 03:26:56ID:UOIsfffYソース公開汁。
アプレットビューワはそんなに信用しないほうがいい。
ブラウザでは出来ない動作が可能だからだ。
0371名前は開発中のものです。
2005/12/14(水) 09:22:28ID:VHYWcMtd0372π
2005/12/14(水) 12:46:00ID:au/Ihpoc実際に何が起こっているのかはわかりませんが、外見上は、たまにrepaint飛ばしてるんじゃないかって感じで、
一瞬止まったように見えるのです。で、カカカカカカカカカカクッカカカカカカカカカクッカカカカカカと…
マウスカーソルをアプレットビューワの上で動かしてると、凄くなめらかなアニメーションになって
スーと動きます。ずっとこんな風に動けばいいのに…。普通のことしか書いてませんがソースはこんな感じです。
0373π
2005/12/14(水) 12:46:39ID:au/Ihpocpublic void start(){
super.start();
image = createImage(width, height);
/*オフスクリーンのGraphics*/
preg = image.getGraphics();
if(thread == null){
thread = new Thread(this);
thread.start();
}
}
public void stop(){
thread = null;
}
0374π
2005/12/14(水) 12:47:50ID:au/Ihpoc{
Thread thread0 = Thread.currentThread();
/*whileの条件式は丸移しですがこれでいいのか気になります*/
while(thread == thread0){
try{
thread0.sleep(50);
}
catch(InterruptedException e){
}
/*
ここにパラメータの変更
*/
repaint();
}
}
public void update(Graphics g){
paint(g);
}
public void paint(Graphics g){
preg.clearRect(0, 0, width, height);
/*
ここに描画の部分draw****(preg, *****)って感じ
*/
g.drawImage(image, 0, 0, this);
}
0375名前は開発中のものです。
2005/12/14(水) 20:39:46ID:cJCmSJXT描画イベントをイベントキューに入れるだけなんですね。
イベントキューから描画イベントが取り出された時点で、初めて描画されるのですね。
そのスレッドのタイミングによっては、複数のrepaint()がある特定のコマで
一緒にされたり、故にあるコマでのrepaintが飛ばされてしまうのですね。
マウスカーソルを動かすと、システムから連続でrepaintが発送されるので
タイムラグがなくなり、スムーズに描画できるのです。故に解
0376π
2005/12/14(水) 21:00:58ID:au/Ihpoc納得です。
ありがとうございました。
0377名前は開発中のものです。
2005/12/14(水) 21:15:58ID:7r834BYR0378名前は開発中のものです。
2006/02/07(火) 02:44:56ID:YcqHXq4Xコンソールには
「************.classが見つかりません。」
と書いてあります。
デスクトップ上ではアプレットがちゃんと動作するのですが、
同じファイル(jarファイルとhtmlファイル)をアップロードしてから読み込むと見つからないと言われます。
どのような間違いが考えられるでしょうか?
0379名前は開発中のものです。
2006/02/09(木) 01:59:14ID:2XaB8tQaバイナリとか、テキストとか、なんか削除するとか設定が問題なのかなぁ。
転送後の画像がめちゃめちゃになったりしている…。
0380名前は開発中のものです。
2006/02/09(木) 02:18:23ID:KZsev84P0381名前は開発中のものです。
2006/02/09(木) 03:30:00ID:2XaB8tQaテキストモード、バイナリモード試してもうまくいかない。
サイズも変わってなさそうだし…。
自分のPC上では動くし…。
0382名前は開発中のものです。
2006/02/09(木) 11:25:08ID:A4OVcy5n0383名前は開発中のものです。
2006/02/09(木) 18:17:46ID:2XaB8tQaそれはhttpサーバをインストールして、
そこにファイルを置いてアクセスするってことでしょうか?
サーバを介すと状況が変わってくる可能性があると…。
0384名前は開発中のものです。
2006/02/09(木) 19:10:26ID:A4OVcy5nコードがおかしい可能性が高いわけだし
初心者でもhttp鯖立ち上げるのに一番楽なのは
NetBeansのようにTomcatこみのIDE使うあたりか
0385名前は開発中のものです。
2006/02/10(金) 07:41:28ID:GjTMzduU0386名前は開発中のものです。
2006/02/10(金) 10:06:44ID:8daTPLyQボケろよつっこめねぇ!
0387名前は開発中のものです。
2006/02/10(金) 11:16:22ID:8p7psy6q<body>
<applet archive="piyo.jar"
code="hoge.class"
width=500 height=400>
</applet>
</body>
で、自分のPC上で実行するとIEの下のバーに「アプレット hoge started」と表示されてちゃんと動きます、
htmlとpiyo.jarを同じフォルダにアップロードしてhtmlを開くと「例外:java.lang.NullPointerException. java アプレットの読み込みに失敗しました..」あるいは、「アプレット hoge notinited」と出ます。
もう少しいろいろ調べてみます。
0388名前は開発中のものです。
2006/02/10(金) 11:54:55ID:8p7psy6qhogeはHogeの間違いでした。
あと、実験でHello Worldもアップロードしてみたら動きました。
両方Linuxからscpコマンドで転送しました。
386さんはもし単純なミスに気づいてたら教えてください。
0389名前は開発中のものです。
2006/02/10(金) 14:02:02ID:GjTMzduU0390名前は開発中のものです。
2006/02/10(金) 17:36:59ID:8p7psy6qjava.lang.ClassNotFoundException: Hoge.class at sun.applet.AppletClassLoader.findClass(Unknown Source)…
Caused by: java.io.IOException: open HTTP connection failed. at sun.applet.AppletClassLoader.getBytes(Unknown Source)…
Exception in thread "Thread-9" java.lang.NullPointerException at sun.plugin.util.GrayBoxPainter.showLoadingError(Unknown Source)…
java.lang.NullPointerException at sun.plugin.util.GrayBoxPainter.showLoadingError(Unknown Source)
Exception in thread "thread applet-Ex2b_RotateEarth.class" java.lang.NullPointerException at sun.plugin.util.GrayBoxPainter.showLoadingError(Unknown Source)
やはり HTTP connection failed がポイントでしょうか。
0391名前は開発中のものです。
2006/02/10(金) 17:40:29ID:hccRquls0392名前は開発中のものです。
2006/02/10(金) 18:06:52ID:8p7psy6q0393名前は開発中のものです。
2006/02/11(土) 01:52:51ID:QWiuJU/z0394名前は開発中のものです。
2006/02/11(土) 02:24:35ID:tfXfazFiとあったので省略しています。書いてもうまくいきません。
それともなにか別のプログラムが必要なのでしょうか…。
0395名前は開発中のものです。
2006/02/11(土) 03:36:41ID:tfXfazFiやはり、動きませんでした。
しかし、HelloWorldは動きました。
同じアプレットのプログラムで何が異なっているんでしょう。
マニフェストファイル?(gcc環境で作成したことぐらいしか書いてない)
PC上の同じディレクトリにhtmlとjarを置いてブラウザで開くとちゃんとstartするのです。
まったく意味がわかりません。
■ このスレッドは過去ログ倉庫に格納されています