Выполнение файла класса, отправленного по сети в Java - PullRequest
1 голос
/ 11 марта 2011

Я пытаюсь отправить файл класса для разгрузки «работы» с клиента на сервер. Я отправляю файл класса «MyClass.class» и успешно получаю его как «MyFooClass.class».

Мне нужно выполнить main () MyFooClass на стороне сервера и вернуть результат.

Я пытаюсь загрузить MyFooClass загрузчиком классов, но получаю ClassNotFoundException.

Пожалуйста, помогите.

Адитья

Ответы [ 3 ]

3 голосов
/ 11 марта 2011

Если вы не выполняете RMI, сторона «сервера» не будет иметь класс в своем classpath и, следовательно, потерпит неудачу с ClassNotFoundException.

Теперь большие вопросы - почему вы пытаетесь отправить весь класс?Я думаю, что было бы проще иметь класс на сервере, а затем отправить текстовое представление (json, xml, yaml, csv) о состоянии класса на клиенте, а затем заставить сервер прочитать представление, создать класс (эс) ему нужно и выполнить работу.

1 голос
/ 11 марта 2011

Да, вы не должны переименовывать класс.Загрузчик классов будет искать только MyFooClass.class, но доступен MyClass.class. Так что он вызывает исключение, сообщающее, что ожидаемый MyClass.class недоступен.

0 голосов
/ 11 марта 2011

Имя класса и имя файла должны совпадать.Таким образом, вы не можете просто переименовать файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...