Я использую JDK6 для компиляции входного src из пользовательского интерфейса и запуска немедленно.
Но проблема в том, что по умолчанию мое приложение использует jre, а не jdk, поэтому:
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
всегда возвращает ноль;
И я заметил, что на каждом сервере также установлен JDK6, поэтому я пишу это, чтобы ожидать решения этой проблемы:
System.setProperty("java.home", "\opt\jdk-i386-60");
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
// Dynamic compile and run app
Но это не сработало, возможно, среда Java не изменится на то место, которое я только что установил немедленно, оно все равно получило нулевой объект.
Итак, мой вопрос: как вы переключаете свою среду jre на jdk и сразу получаете эффект, что мы можем получить объект JavaCompiler?
Спасибо.