Я программно использую Ant для компиляции набора файлов Java (с помощью задачи javac). При выполнении программы Java я получаю сообщение об ошибке:
Ошибка запуска современного компилятора
Однако, когда я запускаю тот же build.xml из командной строки, а не через программу, компиляция проходит без проблем.
Еще вопрос (http: //stackoverflow.com/questions/2577790/error-starting-modern-compiler), похоже, предполагает, что эта ошибка возникает, когда Ant пытается использовать версию javac, отличную от той, которая уже загружена в JVM. Однако я не указываю какой-либо конкретный компилятор, который будет использоваться, и документация (http://ant.apache.org/manual/index.html), похоже, предполагает, что в идеале он должен использовать Javac, загруженный в JVM.
Программа работает на некоторых машинах, но не работает на других. Единственная заметная разница между машинами — это переменные среды. Программу необходимо выполнить на нескольких разных машинах, каждая из которых имеет слегка различающиеся переменные среды. Поэтому изменение этих переменных не является приемлемым решением.
Думаю, мне нужен какой-то способ указать Ant, что для задачи javac следует использовать компилятор, доступный в JVM в настоящее время.
Подробнее здесь: https://stackoverflow.com/questions/653 ... ing-modern