Интеграция Ant Builder в Eclipse: Ошибка «Пустые ссылки на переменные» - PullRequest
16 голосов
/ 17 октября 2011

У меня есть некоторые задачи Ant в моем проекте Eclipse JDT, которые я хочу выполнять перед каждой компиляцией, поэтому я добавил Ant Builder в свою конфигурацию Eclipse Builder.В качестве местоположения файла сборки я ввел

${workspace_loc:${project_path}/build.xml}

Я делаю , а не , чтобы иметь здесь абсолютные пути или имя проекта.Конфигурация Eclipse является частью репозитория, и другие пользователи проверяют это с помощью различных макетов файловой системы и, возможно, разных имен проектов Eclipse.Например, у меня обычно есть несколько рабочих копий одного и того же проекта в моей рабочей области Eclipse, каждая из которых, конечно, имеет свое имя.

Это работает большую часть времени.Однако иногда я получаю следующее сообщение об ошибке в диалоговом окне:

Ошибки, возникающие во время сборки.
Ошибки при запуске компоновщика 'Integrated External Tool Builder' в проекте 'MyProjectName'.
Пустой выбор ссылок на переменные: $ {project_path}
Пустой выбор ссылок на переменные: $ {project_path}

Это происходит, когда Eclipse решает построить проект, когда в проекте не выбран ни один ресурс проекта.Проводник пакетов.Я могу воспроизвести его, создав в проекте фиктивный файл, удалив его вне Eclipse, выбрав его в Eclipse и нажав F5 .Eclipse заметит, что файл больше не существует, удалите его из Package Explorer (так что больше ничего не выбирается) и затем создайте проект, сообщив об ошибке.

Хотя на самом деле задачи Ant не так уж важнызапускаются для каждой компиляции, я не хочу иметь такого окна сообщения об ошибке, которое может сбить пользователей с толку.

Так как же я

  • ссылаюсь на файл build.xml в другом файле?таким образом, что проблема исчезнет, ​​или
  • исправит проблему, или
  • отключит диалоговое окно ошибки для этой конкретной ошибки?

Любая помощь будет принята с благодарностью.Я использую Eclipse 3.7 (Индиго).

Ответы [ 2 ]

17 голосов
/ 25 октября 2011

Очевидно, что возникают проблемы с переводом ссылки на переменную ($ {project_path}) внутри ... ссылки на переменную ($ {workspace_loc}).

Вы можете попробовать $ {build_project}вместо переменной

${build_project:/build.xml}

Надеюсь, это поможет.

9 голосов
/ 08 мая 2013

Вы испытали некоторые неудобства в пользовательском интерфейсе Eclipse.Логика подсказывает вам, что когда вы открываете проект, переменные, касающиеся открытого проекта, должны быть заполнены.Но это не так, потому что из-за ошибки или по другой причине код убил их после того, как фокус переместился в другое место.

Так что в качестве обходного пути вы можете:

  1. Поместить полныйпуть к XML-файлу
  2. Непосредственно перед запуском внешнего инструмента щелкните в левом проекте (в представлении Project Explorer), а затем нажмите кнопку запуска.

Нажатие на проект (значок папки) приведет к заполнению переменных

Кстати, я думаю, ${workspace_loc}${project_path}/build.xml в порядке.

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