注: この Java 配備ガイドでは、Java SE 6 update 10 リリースより前にリリースされた機能について説明します。最新情報については、Java Rich Internet Application の開発および配備を参照してください。

アプレットを実行すると java.lang.ClassNotFoundExceptioncom.ms.* パッケージでスローされる

症状

Sun Java™ Runtime Environment (JRE™) を使ってブラウザ内でアプレットを実行すると、ClassLoader によって com.ms.* パッケージで java.lang.ClassNotFoundException がスローされます。同じアプレットが、Microsoft Virtual Machine (VM) の下では何のエラーもなく実行されます。

原因

Microsoft VM では、J/Direct、Application Foundation Classes (AFC)、Windows Foundation Classes (WFC) など、独自のクラスライブラリが多数提供されています。これらのパッケージは Sun JRE では使用できないため、アプレットをブラウザ内で実行すると java.lang.ClassNotFoundException がスローされます。

解決方法

アプレットのソースコードを Microsoft 独自のクラスライブラリを使用したものから、Java プラットフォームにおける同様のクラスを使用したものに移行します。次の表に、Microsoft VM のクラスライブラリと Java プラットフォームのクラスライブラリの一覧を示します。

Microsoft VM Java プラットフォーム
J/Direct Java Native Interface
Application Foundation Classes Swing、Java 2D API
Windows Foundation Classes Swing、Java 2D API

詳細情報

How to avoid potential pitfalls of Microsoft's non-standard SDK for Java
Trail: Creating a GUI with JFC/Swing
Lesson: Learning Swing with the NetBeans IDE


Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.