深刻な問題があります。私たちのアプリケーションには、Eclipse RCP クライアントの外部 ole プラグインがプラグインされています。このプラグインは、実行中に何らかのエラーを引き起こし、クライアント全体を強制終了します。
問題を修正できないため、少なくともクライアントがクラッシュしないように、そのエラーをキャッチしたいと考えています。より正確には、JVM が致命的なエラーを引き起こしたため、クライアントがクラッシュします。JVM のクラッシュを回避するために、これらのエラーを抑制する可能性はありますか?
これはクライアントにプラグインを組み込むコードですが、このようなエラー キャッチを実現する方法を知っている人はいますか?
// create OLE frame and site (XMAX control).
clatFrame = new OleFrame(parent, SWT.NONE);
clatUtil = null;
try {
clatSite = new OleControlSite(clatFrame, SWT.NONE,
"Congree.XMax.Control");
clatSite.doVerb(OLE.OLEIVERB_INPLACEACTIVATE);
clatUtil = new OleUtil(clatSite);
// setzt die Dialogsprache
String dialogLanguage = Platform.getNL();
// Umgehung für Bug-20760
if (LOCALE_DE.equalsIgnoreCase(dialogLanguage)) {
// ClatIn Format 'de-DE'
dialogLanguage = dialogLanguage + "-DE"; //$NON-NLS-1$
} else {
dialogLanguage = dialogLanguage.replace("_", "-");
}
clatUtil.invokeMethod(null, "SetGuiLanguage", true, dialogLanguage);
GridDataFactory.fillDefaults().hint(SWT.DEFAULT, 25).grab(true,
false).align(SWT.FILL, SWT.TOP).applyTo(clatFrame);
} catch (SWTException e) {
clatFrame.dispose();
LOG.warn("OLE control (CLAT) not installed");
}
ログ
http://www.file-upload.net/download-8284055/jvm_errorlog.log.html