проблема с 'javac' не найдена - PullRequest
1 голос
/ 19 ноября 2009

У меня есть приложение Java, размещенное на удаленном экземпляре tomcat, который выполняет файл bat, который содержит следующую строку

javac filename.java

Я получаю следующую ошибку: -

«javac» не распознается как внутренняя или внешняя команда, действующая программа или командный файл.

Я установил путь в переменных среды. Я попытался запустить тот же файл bat на машине, он работает (что означает, что нет ничего плохого в пути). Но запуск его через приложение выдает ошибку. В чем может быть проблема?

Ответы [ 4 ]

2 голосов
/ 19 ноября 2009

Установка правильного пути в вашей среде не фиксирует путь в среде запущенного процесса tomcat. Если вы изменили путь в системных настройках, перезапуск tomcat (или перезагрузка системы), вероятно, решит вашу проблему.

0 голосов
/ 19 ноября 2009

Если у вас установлен JRE, а не JDK, вы сможете запустить Tomcat, но не будет javac.exe. Перейдите в JAVA_HOME / bin и посмотрите, есть ли файл javac.exe. Если нет, у вас установлена ​​JRE, и вам нужно будет получить JDK.

Просто любопытно - почему ваше приложение Tomcat вызывает javac.exe? Вы создаете классы на лету? Если да, почему бы вам не генерировать байт-код, используя вместо этого ASM?

0 голосов
/ 19 ноября 2009

Вы должны установить classpath для пользователя, который выполняет tomcat, а не только для вашего логина.

0 голосов
/ 19 ноября 2009

Как только вы добавите %JAVA_HOME%\bin в переменную PATH на удаленном компьютере (при условии, что вы установили %JAVA_HOME%), вам нужно будет запустить новое окно cmd, чтобы новый PATH был доступен.

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