Java - позволяет пользователю написать собственный код, затем скомпилировать его, а затем использовать в течение того же времени выполнения - PullRequest
5 голосов
/ 02 апреля 2011

Мне нужно выполнить следующие шаги:

  1. Позволить пользователю написать собственный код - нет проблем, это всего лишь один интерфейс для реализации, и я сохраняю файл
  2. Скомпилируйте его - нет проблемЯ использовал ToolProvider.getSystemJavaCompiler() и создал .class file
  3. Позвольте пользователю использовать этот новый код - здесь я застрял .У меня есть файл .class и что теперь?Мне нужно как-то добавить его в свой проект, и я не знаю как.

Спасибо за помощь!

Ответы [ 2 ]

5 голосов
/ 02 апреля 2011

Используйте URLClassLoader для загрузки классов. Затем вы можете использовать отражение, чтобы создавать и манипулировать ими.

1 голос
/ 02 апреля 2011

Что вам нужно сделать, это написать свой собственный ClassLoader, который будет загружать только что скомпилированные классы.
В Интернете есть много примеров того, как это сделать.

Вот один из них для загрузкииз Интернета: http://kazi -masudul-alam.blogspot.com / 2008/01 / java-classloader.html

...