У меня есть маленькое решение, около 20 проектов. Решение также содержало около шести исходных проектов, написанных сторонним поставщиком услуг ACME. Теперь, наконец, эта другая сторона предоставляет нам только с несколькими DLL. Я просто включил их источник, один проект в DLL, в решение, и поэтому я ищу аккуратный способ включения всех этих сборок в решение, поэтому на них можно ссылаться из многих проектов, которые в них нуждаются.Как поделиться несколькими бинарными файлами между исходными проектами в одном решении?
Мои сразу бросаются варианты:
- Создать
AcmeAssembly
проект, добавить все библиотеки DLL в качестве элементов проекта, установленных для копирования продукции. - Создайте папку решений
AcmeAssembly
. Быстрее и проще, чем исходный проект с двоичным кодом, но папки с решениями имеют очень и очень большой недостаток в отсутствии возможности группировки файлов без файла решения, то есть вне VS. - Создайте пакет NuGet, который включает все необходимые бинарные файлы. Тогда, по крайней мере, у нас также есть частично «физическая» группировка в папках
packages
. Моя проблема здесь в том, что я никогда не писал пакет NuGet, но я не спрашиваю, как здесь. Я спрашиваю о трех возможных решениях, и больше будет приветствоваться, и если NuGet победит, я научусь писать пакет.
Я не могу просто использовать выходные данные проекта bin\debug
и bin\release
папки. Для меня это строго выходные папки, и там также должны выводиться ничего, кроме других сборочных сборок. Удаление папки bin
должно иметь абсолютно нулевой эффект для сборки, так что, конечно, нет места для хранения двоичных файлов.
Я голосую за NuGet. Это предпочтительный способ распределения сборок. – Kiliman
Nuget наверняка. Держится очень аккуратно. –
Непонятно. Вы спрашиваете, как использовать свою третью сторону или распространять? Я работаю над большими системами с сотнями сторонних DLL и сотен проектов. У нас есть папка 'bin', где мы' 1-'Имеем все dll, наши и третьи лица. '2-' мы ссылаемся на все из этого бункера. '3-' мы строим все проекты в этом бункере. '4-самостоятельные проекты встроены в подкаталоги под bin. - у нас никогда не было проблем с компиляцией, упаковкой или распространением. Хотя наш процесс сборки имеет отличия от процесса сборки программистов –