Как скомпилировать проект .NET без установленной Visual Studio?

Как скомпилировать проект .NET без установленной Visual Studio?

Я хочу скомпилировать проект .NET/C#, но не хочу устанавливать для этого Visual Studio.

Какие инструменты мне понадобятся и как скомпилировать проект?

решение1

  1. Загрузите и установите последнюю версию .NET Framework.
    Например, вы можете использовать установщик дляУстановщик .NET Framework 4.5.

  2. Откройте командную строку и перейдите в каталог установки .NET Framework.
    Например:

    cd \Windows\Microsoft.NET\Framework\v4*
    
  3. ИспользоватьMSBuild.exeдля компиляции вашего решения.
    Например:

    msbuild "C:\Users\Oliver\Documents\My Project\My Project.sln" /t:Rebuild /p:Configuration=Release /p:Platform="Any CPU"

Если проект использует пакеты NuGet, вы можете выполнить следующие действия, чтобы получить их:

  1. ЗагрузитьNuGet.exe Командная строка Boosterи, например, поместить его в каталог решения.

  2. Откройте командную строку и перейдите в каталог решения.
    Например:

    cd "C:\Users\Oliver\Documents\My Project"
    
  3. Вызовите NuGet.exeобновление пакетов, необходимых для этого решения:

    NuGet.exe install "My Project/packages.config" -o packages/
    

решение2

Если вы хотите избежать установки Visual Studio, вы можете попробоватьМононуклеоз, акроссплатформенныйи среда выполнения и разработки .NET с открытым исходным кодом. Mono основан на опубликованном стандарте ECMA для C# и напрямую совместим с предварительно скомпилированными приложениями C#.

Моно также включает в себяинструмент под названием XBuildкоторый может полностью заменить MSBuild. Смотретьэта статья из проекта Monoотносительно переноса проекта из MSBuild в XBuild. Однострочное описание XBuild из Wiki:

xbuild — это реализация msbuild для Mono, позволяющая компилировать проекты, имеющие файл msbuild, в Linux.

Обратите внимание, что помимо Linux также поддерживаются Windows и Mac OS X.

решение3

Так как в Windows 10 .NET Framework уже предустановлен, теперь мы можем компилировать (старые) проекты с помощью включенного MSBuild, расположенного по адресу C:\Windows\Microsoft.NET\Framework64\v4.0.30319\.

Но недавно я попробовал сделать это с проектом .NET Framework 4.8, созданным с помощью Visual Studio 2022, и это не сработало, получив следующее предупреждение:

Project file contains ToolsVersion="15.0". This toolset may be unknown or missing, in which case you may be able to resolve this by installing the appropriate version of MSBuild, or the build may have been forced to a particular ToolsVersion for policy reasons. Treating the project as if it had ToolsVersion="4.0". For more information, please see http://go.microsoft.com/fwlink/?LinkId=291333.

И несколько error CS1056: Unexpected character '$'ошибок, поэтому для его создания мне пришлось выполнить следующие шаги:

  1. ЗагрузитьПакет разработчика .NET Framework 4.8и установите его.
  2. ЗагрузитьУстановщик Visual Studio Build Tools 2017и запустите его. Ничего не выбирайте и просто нажмите кнопкуУстановитькнопка внизу справа, должна быть установлена ​​на 47 МБ.
  3. Идти кНачинатьVisual Studio 2017и откройтеКомандная строка разработчика для VS 2017ярлык.
  4. В открывшемся окне командной строки cdперейдите в папку репозитория.
  5. Бегать:msbuild [ProjectName].sln /t:Rebuild /p:Configuration=Release /p:Platform="Any CPU"
  6. Проверитьbin\Выпускпапка для скомпилированного exe-файла.

Надеюсь, это сработает для всех, кто пытается создать проект .NET Framework без установки Visual Studio Community, которая требует не менее 2 ГиБ для разработки подобных приложений.

Связанный контент