こんにちは、StackoverflowコミュニティJava Bukkitは、InputStreamから.jarファイルをロードします。
私はJavaとbukkitに固有の質問があります。私は暗号化されたプラグインを持っていると私はディスク上に復号化されたファイルを保存したくない。だから私はInputStreamを使用しました。しかし、今私の問題は、このファイルをminecraft(bukkit)に注入する方法です。 カスタムクラスローダーはありますか?私はたくさんの検索をしましたが、実際の解決方法は見つけられません。
私は、AES-128で暗号化されたプラグインを解読:
FileInputStream fin;
CipherInputStream cin;
int nread = 0;
byte [] inbuf = new byte [MAX_FILE_BUF];
fin = new FileInputStream (input);
cin = new CipherInputStream (fin, mDecipher);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
while ((nread = cin.read (inbuf)) > 0)
{
byte[] trimbuf = new byte [nread];
for (int i = 0; i < nread; i++)
{
trimbuf[i] = inbuf[i];
}
baos.write(trimbuf);
}
だから今、私はこれは、この時点ではうまく機能しているのInputStream
ByteArrayOutputStream out = new ByteArrayOutputStream();
InputStream is2 = new ByteArrayInputStream(baos.toByteArray());
JarInputStream in = new JarInputStream(is2);
でファイルをロードしようとしました。今、私はbukkitサーバーにこのInputStream "is2"をロードします。