10

友人と私は小さなゲームを開発しており、開発段階を友人と共有したいと考えています。だから私はこの小さなページhttp://people.scs.carleton.ca/~manders8/game.htmlを作りました

現在、更新しているのは .class ファイルの 1 つです。しかし、何らかの理由で常に古いバージョンが読み込まれます。Java キャッシングをオフにする方法があることは知っていますが、私の友人はそれほど有能ではありません。さらに、人々にあなたのゲームをプレイしてもらうには、非常に簡単で、試すためだけにスクリーン ショットを使用して 5 つの手順を実行する必要はありません。

私はこれがタグです:

<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="no-cache">
<meta http-equiv="Expires" content="-1">
<meta http-equiv="Cache-Control" content="no-cache">

ブラウザ関連かもしれないと思ったので、それは助けにはなりません。

これは私のコードです

<applet code="com.murderbody.prototype.TitleScreen.class" codebase="http://people.scs.carleton.ca/~manders8/content/" width=640 height=380></applet>

アプレットから次のように変更:

<object type="application/x-java-applet;version=1.5" width="640" height="380">
     <param name="codebase" value="http://people.scs.carleton.ca/~manders8/content/">
     <param name="code" value="com.murderbody.prototype.TitleScreen.class">
     <param name="cache_option" value="no">
</object>
4

3 に答える 3

13

これをアプレットタグ内に追加します。<param name="cache_option" value="no">

アプレットタグと言えば、それらは何年もの間時代遅れになっています。代わりにobjectタグの使用を検討してください。

于 2010-11-23T21:45:15.553 に答える
3

Javaアプレットのキャッシュは、ブラウザとJavaプラグインの2つのレベルで発生する可能性があります。あなたの問題はプラグインにあるようです。私はちょうどこれを見つけました:

http://java.sun.com/products/plugin/1.3/docs/appletcaching.html

一部の人が使用するアプローチの1つは、リソースのバージョン管理です。つまり、バージョンごとに新しいアプレットファイル名を生成します(アプレットをjarファイルにパッケージ化し、新しいバージョンごとにjarの名前を変更する場合(titlescreen-1.2.23.jarなど)。この名前変更をJARレベルとタグレベルの両方で自動化できる適切なビルドツール(ant、maven)がある場合は、より良い方法です。

于 2010-11-23T21:45:22.297 に答える
1

これらのタグは、ページがキャッシュされるのを防ぐのに驚くべき効果を発揮します。ただし、アプレットは別です。:)

これらのヘッダーをクラス ファイル自体と共に送信するようにサーバーを構成する必要があります (可能であれば、.htaccessサポートを調べてください)。

それが不可能であるが、PHP またはサーバー側のスクリプト言語にアクセスできる場合は、次のようなものを使用できます。

<applet code="com.murderbody.prototype.TitleScreen.class?<?php echo rand(1, 10000);?>" codebase="http://people.scs.carleton.ca/~manders8/content/" width=640 height=380></applet>

編集: また、R. Bemrose には良い考えがあります。これをアプレットタグに追加してみてください:

<param name="cache_option" value="no">

それが解決策になる場合は、必ず彼の答えを受け入れてください:)

于 2010-11-23T21:45:44.387 に答える