###前提
Windowsでのみ動作保証しているアプリとなります。
###該当のソースコード
Java
1//システムクラスローダを取得する処理 2URLClassLoader sysloader = (URLClassLoader) ClassLoader.getSystemClassLoader();
###発生している問題・エラーメッセージ
Java8を使用しているPCでは正常に稼働します。
Java9(Early-Accessですが...)だと上記ソースコードに対してExceptionが吐き出されました。
Exception in thread "main" java.lang.ClassCastException: java.base/jdk.internal.loader.ClassLoaders$AppClassLoader cannot be cast to java.base/java.net.URLClassLoader
###実現したいこと
アプリユーザはJava8/9のいずれかを使用しているので、両方に対応できるように修正したいです。
Java9のみExceptionを吐いた理由として、
「Java9の仕様として"AppClassLoader"が"URLClassLoader"を継承しなくなった」
が原因だと考えています。
適切な回避方法に関して知己がある方、アドバイスをお願いします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/04/24 13:00
2017/06/14 02:17 編集
2017/06/14 02:46
2017/06/14 12:11
2017/06/14 12:32