Как запустить Javac из Eclipse - PullRequest
5 голосов
/ 13 мая 2011

Я пытаюсь запустить инструмент 'javac' для скомпилированного файла .class в Eclipse. Я открываю Настройка внешних инструментов , они заполняют поля:

Расположение: C: \ Program Files \ Java \ jdk1.6.0_25 \ bin \ javac.exe

Рабочий каталог: $ {workspace_loc: / Main / bin}

Аргументы: ?

Я хочу спросить вас, что я должен написать в поле Аргументы , и я заполняю * Местоположение * и Рабочий каталог: поля, верно?

Ответы [ 3 ]

10 голосов
/ 14 марта 2014

Запуск компилятора javac из Eclipse может быть очень полезной функцией в некоторых случаях (например, для целей тестирования, для сравнения вывода javac с выводом компилятора Eclipse, для перекомпиляции отдельных файлов классов с помощью специальных параметров компилятора javac или скомпилятор другой версии JDK и т. д.).Помимо использования ant , есть два удобных способа интеграции javac в Eclipse: настройка «Конфигурация внешних инструментов» для javac или добавление javac в цепочку сборки Eclipse проекта.

Настройка «Настройки внешних инструментов» для javac

Вот шаги, необходимые для настройки компилятора javac, чтобы его можно было использовать в Eclipse (готовые конфигурации запуска приведены ниже):

  1. Создайте новую Конфигурацию внешних инструментов .
  2. Установите для "Местоположения" конфигурации путь к исполняемому файлу javac (например, C:\Program Files (x86)\Java\jdk1.7.0_25\bin\javac.exe).
  3. Установите для параметра «-classpath» javac значение classpath проекта в поле «Аргументы» конфигурации (например, -classpath ${project_classpath}).
  4. Установите параметр «-d»javac в двоичную папку проекта (например, -d ${project_loc}\bin).
  5. Добавьте любые дополнительные параметры javac , например "-verbose" или "-parameters", в список аргументов.
  6. Добавить путь к файлу источникаФайл или исходная папка в end списка аргументов (например, ${selected_resource_loc} для выбранного исходного файла или ${selected_resource_loc}\* для выбранного пакета).Полное поле «Аргументы» для конфигурации может выглядеть следующим образом: -verbose -classpath ${project_classpath} -d ${project_loc}\bin ${selected_resource_loc}\*
  7. Запустите настройку внешнего инструмента для выбранного файла.

Кроме тогодля этого вам, вероятно, понадобится выбрать «Обновить ресурсы после завершения» для выбранного проекта на вкладке «Обновить» конфигурации инструмента и, возможно, отменить выбор «Сборка перед запуском» на вкладке «Сборка».

Я создал две конфигурации запуска по умолчанию для javac, которые вы можете использовать повторно, поместив их в файл, заканчивающийся на «.launch» в папке вашего проекта (например, «javac.launch»).Eclipse автоматически обнаружит эти файлы конфигурации, как только вы откроете диалоговое окно «Настройка внешних инструментов».Скорее всего, вам потребуется изменить местоположение javac на местоположение javac на вашем компьютере.

Файл "javac (подробный файл) .launch" - запускает javac с опцией -verboseдля одного выбранного файла:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<launchConfiguration type="org.eclipse.ui.externaltools.ProgramLaunchConfigurationType">
<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${project}"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LAUNCH_CONFIGURATION_BUILD_SCOPE" value="${none}"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="C:\Program Files (x86)\Java\jdk1.8.0\bin\javac.exe"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_TOOL_ARGUMENTS" value=" -verbose -classpath ${project_classpath} -d ${project_loc}\bin ${selected_resource_loc}"/>
</launchConfiguration>

Файл "javac (dir) .launch" - запускает javac для выбранного пакета:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<launchConfiguration type="org.eclipse.ui.externaltools.ProgramLaunchConfigurationType">
<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${project}"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LAUNCH_CONFIGURATION_BUILD_SCOPE" value="${none}"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="C:\Program Files (x86)\Java\jdk1.8.0\bin\javac.exe"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_TOOL_ARGUMENTS" value="-classpath ${project_classpath} -d ${project_loc}\bin ${selected_resource_loc}\*"/>
</launchConfiguration>

Добавление javac в цепочку сборки Eclipse проекта

Добавление javac в цепочку сборки, чтобы он выполнялся автоматически во время полной или автоматической сборки, выполняется аналогично описанному выше:

  1. Откройте свойства проекта и выберите вкладку «Строители».Затем, если у вас уже есть конфигурация запуска для javac (см. Выше), вы можете «Импортировать ...» как новый компоновщик.В противном случае вы можете создать конструктор "New ..." для javac.
  2. Скорее всего, вы захотите изменить аргументы для javac в соответствии с вашими потребностями.Сначала вы должны изменить аргумент «-d» на двоичную папку собранного проекта: -d ${build_project}\bin.Затем вы должны добавить исходные файлы / папки, которые вы хотите скомпилировать с помощью javac, в конец списка аргументов, используя переменную «$ {resource_loc}».Полный список аргументов для компиляции одного исходного файла может выглядеть следующим образом: -classpath ${project_classpath} -d ${build_project}\bin ${resource_loc:MyProject/src/myPackage/MyClass.java}.Чтобы скомпилировать полный пакет, вместо этого вы можете написать ${resource_loc:MyProject/src/myPackage}\*.
  3. Выберите вкладку «Параметры сборки» для настройки, когда необходимо запустить Javac Builder.Возможно, вы захотите отменить выбор «После очистки».
  4. Если вы просто хотите добавить javac в качестве дополнительного компилятора поверх компилятора JDT для некоторых исходных файлов, то все готово. Если вы полностью хотите заменить JDT-компилятор, вы должны отменить выбор «Java Builder» на вкладке «Builders» и, возможно, захотите добавить новый инструмент в цепочку сборки, который выполняет чистую операцию для сборки (в противном случае класс файлы не будут удалены во время сборки).
0 голосов
/ 13 мая 2011

Используйте муравья.

Создайте файл сборки Ant, который использует задачу javac, и запустите его, используя представление Ant eclipse.

Документация по Eclipse Ant

Руководство по муравью: задача Javac

0 голосов
/ 13 мая 2011

Создание конфигурации запуска приложения Java

Внутри конфигурации запуска ---> Главная вкладка вы можете указать класс Main для запуска

На вкладке Run Configuration ---> Arguments вы можете указать аргументы, передаваемые в основной класс. Просто введите здесь свои входные аргументы, и каждый аргумент будет разделен пробелом (например, arg1 arg2 arg3 передаст эти 3 аргумента вашему основному классу). Вы также можете параметризовать аргументы, используя предопределенные переменные eclipse folder_prompt, file_prompt или string_prompt (Вы можете использовать кнопку «переменные ...» на вкладке аргументов, чтобы помочь вам настроить их). Когда вы запустите основной класс, Eclipse предложит диалоговое окно, чтобы вы могли ввести аргументы

На вкладке Run Configuration ---> JRE вы можете указать JRE для выполнения основного класса.

...