2

私はFireFox拡張機能でJavaを使用していますが、MozillaがFireFoxでJavaのサポートを停止したため、使用できません16,17,18。そのため、LiveConnectを使用することは以前は可能でしたが、現在は不可能であることがわかりました。

それを回避する方法はありますか?バージョン16以降のFF拡張機能でJavaを使用したいのは、バージョン15に簡単にダウングレードしたくないからです。

これまで私はこのようなJavaを使用していました。

function createFile(folder,file)
{

destinationDir = new java.io.File(folder).mkdirs();
file = new java.io.File(folder,file);
file.createNewFile();
}

そして、それはうまくいきました。しかし、これは私が言及したFFでは機能しなくなりました。

私はここでこの質問を見つけました。

Liveconnectを使用してJavaをFirefox16拡張機能にロードできません

しかし、誰も答えませんでした。

このために私の評判を下げないでください。私はそれのために一生懸命働いています。質問が適切に行われない場合は、それを閉じてください。ありがとう。

4

1 に答える 1

0

これは、私の仕事でJavaを置き換えるために使用する関数の例です。

var string = '\u5909\u63db\u30c6\u30b9\u30c8';
file.initWithPath('C:\\temp\\temp.txt');
file.create(file.NORMAL_FILE_TYPE, 0666);
var charset = 'EUC-JP';
var fileStream = Components
.classes['@mozilla.org/network/file-output-stream;1']
.createInstance(Components.interfaces.nsIFileOutputStream);
fileStream.init(file, 2, 0x200, false);
var converterStream = Components
.classes['@mozilla.org/intl/converter-output-stream;1']
.createInstance(Components.interfaces.nsIConverterOutputStream);
converterStream.init(fileStream, charset, string.length,
Components.interfaces.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER);
converterStream.writeString(string);
converterStream.close();
fileStream.close();

mozilla開発者向けドキュメントで、ファイルの読み取り/書き込みおよび同様の手順に使用できるこのXPCOMの詳細を見つけることができます。したがって、Javaの代わりにこれを使用します。

于 2013-01-31T16:54:21.323 に答える