Как собрать с использованием MSBuild и Delphi XE2

35

Я строил проекты с использованием Delphi XE и MSBuild, используя следующий простой пример, который отлично работает в пакетном файле. Project1 - пустой проект, созданный с использованием "File | Новые | VCL формирует приложение в среде IDE:

call "c:\Program Files (x86)\Embarcadero\RAD Studio\8.0\bin\rsvars.bat"
msbuild.exe /target:Build /p:config=Release  "c:\scratch\test\project1.dproj" 
pause

Если я создал новый пустой проект в Delphi XE2, сохраните его как project1.dproj(dproj ОЧЕНЬ отличается от XE) и запустите следующее:

call "c:\Program Files (x86)\Embarcadero\RAD Studio\9.0\bin\rsvars.bat"
msbuild.exe /target:Build /p:config=Release  "c:\scratch\test\project1.dproj" 
pause

Он дает:

Build FAILED.

"c:\scratch\test\project7.dproj" (Build target) (1) ->
  c:\scratch\test\project7.dproj : error MSB4057: The target "Build" does not e
xist in the project.

    0 Warning(s)
    1 Error(s)

Time Elapsed 00:00:00.00

Я пробовал разные имена целей, включая вещи, которые я нахожу в Codegear.Delphi.Targets, но я не знаю, что такое MSBuild. Может ли кто-нибудь помочь с тем, что я должен поставить?

LATER RESOLUTION: Это было проверено на другом ПК с XE2, и он работает нормально, как предложено Дэвидом ниже. На самом деле проблема заключалась в содержании файла RSVARS.BAT, который не задал правильный путь BDS.

  • 2
    Это эта строка в вашем файле dproj? : <Import Condition = "Exists ('$ (BDS) \ Bin \ CodeGear.Delphi.Targets')" Project = "$ (BDS) \ Bin \ CodeGear.Delphi.Targets" /> Ваша команда msbuild.exe в порядке и работает нормально здесь.
  • 2
    Вот как я это делаю. Что-то не так с вашей установкой. Тебе нужно поговорить с Эмбой.
Показать ещё 6 комментариев
Теги:
msbuild
delphi-xe2

1 ответ

5
Лучший ответ

Как сообщает OP, проблема была неправильным BDS-каналом в файле RSVARS.bat.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню