2016-03-18 2 views
-2

Я пытаюсь скомпилировать проект C# .net только с использованием командной строки, чтобы создать файл bat для компиляции и запуска тестов Selenium. Я экспортировал код из SVN. И я открыл командную строку и смог восстановить пакеты с помощью команды ниже.Компиляция C# .Net из командной строки

И затем, когда я пытаюсь скомпилировать с помощью msbuild, он не может ссылаться на DLL, добавленную через nuget. Я знаю в visual studio через консоль менеджера пакетов, я могу использовать команду (update -reinstall) и заставить ее работать, но как это сделать без визуальной студии.

==== bat file ====== 
REM Restore External Pacakages 
nuget restore packages.config -PacakgesDirectory D:\Testproject\packages" 
msbuid TestProject.sln 

ответ

0

В основном вам нужно ссылаться на MsBuild исполняемого

C:\Windows\Microsoft.Net\Framework\v4.0.30319\MSBuild.exe 

ИЛИ

C:\Windows\Microsoft.Net\Framework64\v4.0.30319\MSBuild.exe 

, то вам нужно пройти путь к файлу .sln или .csproj (зависит от вашей рабочей папки), как параметр.

Вы также можете указать цели msbuild ex. Clean, Rebuild, Build => Как они существуют в Visual Studio.

Последняя команда может выглядеть следующим образом:

Шаблон:

{.NetFrameworkPath}\msbuild.exe {pathToSln} /t:{Build,Clean,Rebuild} 

Примеры

C:\Windows\Microsoft.Net\Framework64\v4.0.30319\MSBuild.exe TestProject.sln /t:Build 

C:\Windows\Microsoft.Net\Framework64\v4.0.30319\MSBuild.exe TestProject.sln /t:Clean;Build 
+0

Да, я делаю то же самое. Проблема заключается в том, что я восстановил пакеты через nuget (в командной строке за пределами visual studio). И эти DLL не ссылаются при компиляции, и она дает ошибку. «Тип или имя пространства имен не могут быть найдены ..» – user1925406

+0

Просто выполните команду 'D: \ projects \ contoso \> nuget.exe restore contoso.sln' ref из [Nuget Docs] (https://docs.nuget.org/consume/package-restore) –

+0

Вы также можете отредактировать свой .sln-файл, и есть логическое значение, которое говорит, если вы хотите восстановить пакеты nuget при построении. –

Смежные вопросы