新しいプロセスでクラスを起動する次のコードがあります。
public final class JavaProcess {
private JavaProcess() {}
public static int exec(Class klass) throws IOException, InterruptedException {
String javaHome = System.getProperty("java.home");
String javaBin = javaHome + File.separator + "bin" + File.separator + "java";
String classpath = System.getProperty("java.class.path");
String className = klass.getCanonicalName();
ProcessBuilder builder = new ProcessBuilder(javaBin, "-cp", classpath, className);
Process process = builder.start();
process.waitFor();
return process.exitValue();
}
}
そして私はそれを次のように使用します:
public static void main(String[] args) throws IOException, InterruptedException {
CustomFrame F = new CustomFrame();
System.out.println(JavaProcess.exec(MyApplet.class)); //Start an applet in a separate JVM.
}
そのアプレットを JFrame に追加するにはどうすればよいですか? 私は次のことを試しました:
public static void main(String args[]) throws IOException {
CApplet CP = new CApplet(null, false, 765, 503);
//Perhaps serialize it.
ObjectOutputStream oos = new ObjectOutputStream(System.out);
oos.writeObject(CP);
oos.close();
}
シリアル化されたオブジェクトを読み取り、それを JFrame に追加しますか? どうやってやるの?