Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > не удается вызвать компилятор


Автор: Кайне 31.12.2009, 12:43
Код

JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
System.out.println(compiler);


выдает null. Снес все версии джавы, поставил свежий JDK  - не помогает.

Автор: LSD 31.12.2009, 12:49
А ты уверен что запускаешь именно на JDK, а не JRE? По умолчанию то ставится и то и то, и java.exe использует именно JRE, а не JDK.

Автор: Кайне 31.12.2009, 12:58
залез в панель управления - java - вкладка java - JRE settings - стоит только JRE. попытался добавить JDK - не удается.

так понял что надо переставить тока JDK без JRE?

Автор: LSD 4.1.2010, 12:27
Цитата(Кайне @  31.12.2009,  12:58 Найти цитируемый пост)
так понял что надо переставить тока JDK без JRE? 

Не обязательно. Надо просто убедится, что запускается java.exe из каталога JDK, а не JRE.

Все зависит от того как запускается твое приложение. Если полным указанием пути к java.exe (обычно так запускают IDE), то надо изменить путь к java.exe. Если приложение запускается bat файлом или из командной строки, то надо:
- зайти в каталог Windows\system32 и удалить оттуда java.exe, javaw.exe, javaws.exe
- проверить переменную PATH и убедится, что там прописан каталог JDK\bin, а JRE\bin отсутвует
- создать (если уже есть, то отредактировать)  переменную JAVA_HOME и прописать туда путь к JDK (именно к JDK, а не к JDK\bin)
- перезагрузиться

Автор: ivanovpv 4.1.2010, 14:20
А нельзя по старинке вызвать класс компилятора?
Код

com.sun.tools.javac.Main


И вообще нужно всего лишь, чтобы JDK_HOME/lib/tools.jar лежал в CLASSPATH...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)