моя проблема в том, что мой код, который работал на Java6, больше не работает. Поскольку мое приложение должно загрузить Jar во время выполнения (плагинов), я написал myselt простой класс, производный от URLClassLoader как этотJava 7: использование URLClassLoader больше не работает
public class MyClassLoader extends java.net.URLClassLoader {
/** Creates a new instance of URLClassLoader */
public MyClassLoader(java.net.URL url)
{
super(new java.net.URL[]{url},ClassLoader.getSystemClassLoader());
}
public void addURL(java.net.URL url)
{
super.addURL(url);
}}
Так что, если я хочу загрузить баночку, я просто называю addURL (pathToJar) и нагрузку, класс через
Class.forName(myClass, true, myClassLoader)
Это работало как шарм, работающий на Java6. Теперь я решил создать автономное приложение Java в Java7. Когда я запускаю приложение, банк также загружается во время выполнения, но если есть класс, внутри которого происходит класс, находящийся внутри пути к классам (а не в банке плагина), я получаю исключение ClassCastException.
Итак, я думаю, что что-то изменилось в Java7. В настоящее время я использую Java7_u13 на OSX. Может ли кто-нибудь дать мне подсказку о том, что я должен сделать, чтобы вернуть прежнее поведение? Поиск в сети еще не помог мне.
Большое спасибо заранее.
Привет, -chris-