Можно ли создать файлы MSBuild (visual studio sln) из командной строки в Mono?
Вопрос
Можно ли создавать решения Visual Studio без запуска MonoDevelop?
Решение
Текущий статус (Моно 2.10, 2011 г.):xbuild теперь может собирать все версии проектов Visual Studio/MSBuild, включая файлы .sln.Просто запустите xbuild
так же, как вы бы выполнили msbuild
на Microsoft .Net Framework.Вам не требуется установка Monodevelop, xbuild поставляется со стандартной установкой Mono.
Если в вашей сборке используются пользовательские задачи, они все равно должны работать, если не зависят от исполняемых файлов Windows (например, rmdir
или xcopy
).
При редактировании файлов проекта используйте стандартный синтаксис пути Windows — при необходимости они будут преобразованы с помощью xbuild.Одним из важных предостережений к этому правилу является чувствительность к регистру — не смешивайте разные регистры одного и того же имени файла.Если у вас есть проект, который делает это, вы можете включить режим совместимости, вызвав MONO_IOMAP=case xbuild foo.sln
(или попробуйте MONO_IOMAP=all
).У Mono есть страница, описывающая более продвинутые Портирование проекта MSBuild техники.
Ответ Моно 2.0 (2008 г.): xbuild еще не завершен (он хорошо работает с файлами .csproj VS2005, имеет проблемы с файлами .csproj VS2008 и не обрабатывает .sln).Mono 2.1 планирует объединить с ним базу кода mdtool (движок сборки командной строки MonoDevelop), но в настоящее время мдтул это лучший выбор. mdtool build -f:project.sln
или man mdtool
если у вас установлен MonoDevelop.
Другие советы
на данный момент по состоянию на август 2017 года мы можем использовать
мсбилд
команда, поскольку xbuild устарел.
xbuild теперь поддерживает решения и проекты как VS2005, так и VS2008.
Я думаю, вы ищете xbuild:http://www.mono-project.com/Microsoft.Build