Как собрать используя MSBuild и Delphi XE2 - PullRequest
34 голосов
/ 09 ноября 2011

Я строил проекты, используя Delphi XE и MSBuild, используя следующий простой пример, который отлично работает в командном файле.Project1 - это пустой проект, созданный с помощью «Файл |Новый |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.Может ли кто-нибудь помочь с тем, что я должен поставить, пожалуйста?

ПОЗЖЕ РАЗРЕШЕНИЕ: Это было опробовано на другом ПК с XE2, и он работает нормально, как предложено Дэвидом ниже.Фактически проблема заключалась в содержимом файла RSVARS.BAT, в котором не был указан правильный путь BDS.

1 Ответ

5 голосов
/ 30 ноября 2012

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

...