Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Java SE Поиск в ArrayList Как выполняется поиск по спискам в java? Есть у меня допустим коллекция ArrayList с объектами в виде строчек. Как мне найти кусочек этой строчки во всем списке? Например, один из объектов объект... https://www.cyberforum.ru/ java-j2se/ thread2114568.html Java SE Пожалуйста, как разобраться в маленькой детали
Дана задача : Создать класс зачетная книжка с внутренним классом, с помощью объектов которого можно хранить информацию о сессиях, зачетах, экзаменах. Решение: import java.util.Scanner; public...
Java SE Симплекс метод нахождения максимума целевой функции Есть задача нахождения максимума от реализации продукции есть функции 2x1+8x2<=20 2x1+1x2<=13 x1+3x2<=15 3x1+x2<=18 Конечная целевая функция имеет вид 4x1+5x2->max Есть код взятый из Симплекс... https://www.cyberforum.ru/ java-j2se/ thread2114024.html Java SE Composition over inheritance https://www.cyberforum.ru/ java-j2se/ thread2113759.html
Мне не совсем понятно, при композиции нам нужно дублировать поля, которые в случае наследования не нужно было бы дублировать? Наследование: public abstract class Animal { private String...
Абстрактные методы Java SE
Добрый день! Столкнулся с понятием абстрактных классов и их абстрактных методов. Вопрос знатокам: зачем описывать абстрактный метод в теле абстрактного класса если при описании класса-потомка...
Java SE Существуют ли в Java указатели? В C++ есть *, в C# есть ref, а в Java есть указатели или что-то подобное? Облазил интернет и ничего не нашел! https://www.cyberforum.ru/ java-j2se/ thread2113626.html
Java SE Получить методы объекта из List https://www.cyberforum.ru/ java-j2se/ thread2113603.html
Ребят, подскажите. Такая проблема. Если обращаться напрямую к объекту, то его методы работают без проблем. Если я этот объект добавляю в список, то при обращении к объекту я не могу использовать его...
Задание значения конкретному элементу массива Java SE
Доброго времени суток,товарищи.Столкнулся с проблемой на поиски которой уже потратил неделю,но так и не нашел ответал,потому прошу вашей помощи. Есть пустой двомерный массив типа char 3х3 ,в котором...
Java SE Задание по коллекциям! https://www.cyberforum.ru/ java-j2se/ thread2113335.html
Собственно есть такое задание:создать консольное приложение на Java "Телефонная книга".Обеспечить следующий функционал:добавление элемента,удаление,поиск,сортировка,запись в файл,загрузка из файла....
Java SE Есть ли разница между неявным и автоматическим приведением типов? https://www.cyberforum.ru/ java-j2se/ thread2113307.html
Привет, подскажите кто нибудь. Читаю про приведение типов в Java. В одной статье используют термины: "автоматическое" приведение и "явное". А в другой статье термины: "явное" и "неявное"...
Java SE Не видит переменную
Добрый день, Помогите пожалуйста. Пытаюсь достать список из класса и не получается. Спасибо. public class Start { public static void main(String args) { ListCreate list = new...
Java SE Определить максимальную/минимальную цифры числа https://www.cyberforum.ru/ java-j2se/ thread2113265.html
Помогите пожалуйста, не понимаю..:( Дано натуральное число. а) Определить его максимальную цифру. б) Определить его минимальную цифру.
6 / 6 / 7
Регистрация: 16.05.2013
Сообщений: 351
0

Не удается динамически подгрузить класс - Java SE - Ответ 11675075

01.11.2017, 20:13. Показов 461. Ответов 0
Метки (Все метки)

Доброго времени суток!

Пытаюсь динамически создать объект необходимого класса, однако (никак не пойму чего) получаю:
java.lang.InstantiationException: figure.Figure
at java.lang.Class.newInstance(Unknown Source)
at commands.PluginController.readPlugins(PluginController.java: 62)
at main.Launcher.main(Launcher.java:10)

В самом .jar файле лежит пакет figure с интерфейсом IFigure и классом Figure (который имплементирует этот интерфейс).
Подскажите, пожалуйста, что я делаю не так?

Заранее благодарю за любые подсказки и решения данной проблемы!

Вот код класса, который подгружает .jar с классом:
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
public static void readPlugins()
{
    // Loading and checking all plugins (подгрузка всех .jar файлов)
    File pluginDir = new File("plugins");
 
    File[] jars = pluginDir.listFiles(new FileFilter()
    {
        public boolean accept(File file)
        {
            return file.isFile() && file.getName().endsWith(".jar");
        }
    });
 
    // Load Class model for each of the loaded plugins (выборка необходимого класса из всех .jar файлов)
    Class[] pluginClasses = new Class[jars.length];
 
    for (int i = 0; i < jars.length; i++)
    {
        try
        {
            URL jarURL = jars[i].toURI().toURL();
            URLClassLoader classLoader = new URLClassLoader(new URL[]{jarURL});
            pluginClasses[i] = classLoader.loadClass("figure.Figure");
 
        }
        catch (MalformedURLException | ClassNotFoundException e)
        {
            e.printStackTrace();
        }
    }
 
    // Creation of an object for each Class (динамическое создание выбранного класса из каждого .jar)
    for (Class clazz : pluginClasses)
    {
        try
        {
            IFigure instance = (IFigure) clazz.newInstance(); // ТУТ БРОСАЕТ ЭТУ ОШИБКУ
            figures.add(new Figure(instance));
        }
        catch (InstantiationException e)
        {
            System.out.println(e.getMessage());
            e.printStackTrace();
        }
        catch (IllegalAccessException e)
        {
            e.printStackTrace();
        }
    }
}


P.S. пробовал ранее на другом примере - все работало, а что тут - вообще не понимаю...

Вернуться к обсуждению:
Не удается динамически подгрузить класс Java SE
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.11.2017, 20:13
Готовые ответы и решения:

System.IO.FileNotFoundException - не удаётся подгрузить dll
Здравствуйте, декомпилировал код с помощью dotPeek программу, экспортировал в проект на C#,...

Как динамически подгрузить массив ocx-ов, имея доступ к их событиям?
С одним ActiveX-ом все понятно: Public WithEvents objExt As VBControlExtender ... Set objExt =...

Почему не удается подгрузить файл в формате JSON?
&lt;!doctype html&gt; &lt;html lang=&quot;en&quot;&gt; &lt;head&gt; &lt;link rel=&quot;stylesheet&quot;...

Как преобразовать класс из динамически сгенерированного кода в локальный класс?
Исходные данные: Форма, на ней кнопка, по нажатию на которую компилируется программа, совершает...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.11.2017, 20:13

класс заполняющийся динамически
люди, помогите. по безопасности задали лабу, одним из элементов программы должна быть таблица...

Как добавлять класс динамически
Люди, возникла проблема в следующем ,если кто знает подскажите плиз. Допустим есть некий объект А...

Динамически менять класс переменных
Такой вопрос, есть несколько подключений к разным БД Mysql, SQL, Oracal как сделать так чтобы в...

Добавить динамически активный класс в субменю
Имеется код: &lt;ul class=&quot;uk-subnav uk-subnav-line uk-margin-remove&quot;&gt; &lt;li class=&quot;uk-h3...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru