2016-06-02 2 views
2

Я получаю другое поведение при компиляции решения с MonoDevelop 5.1.0 и тот же раствор через Cake сценарий ссылающегося XBuild.Компиляция решение с MonoDevelop или торт/XBuild дает разные результаты

При компиляции решения с MonoDevelop все работает нормально. При компиляции через мой торт сценарий, я получаю следующее сообщение об ошибке:

The type System.IDisposable' is defined in an assembly that is not referenced. Consider adding a reference to assembly System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'

Что может быть причиной такого различного поведения?

Скрипт торта не делает ничего необычного. Он просто вызывает XBuild с тем же самым решением.

Моей среда (на Fedora 23):

mono --version 
Mono JIT compiler version 4.4.0 (Stable 4.4.0.142/81f38a9 Thu Apr 28 09:14:25 EDT 2016) 
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com 
    TLS:   __thread 
    SIGSEGV:  altstack 
    Notifications: epoll 
    Architecture: amd64 
    Disabled:  none 
    Misc:   softdebug 
    LLVM:   supported, not enabled. 
    GC:   sgen 

XBuild Version: 
XBuild Engine Version 14.0 
Mono, Version 4.4.0.0 
Copyright (C) 2005-2013 Various Mono authors 
+0

вы можете проверить свою команду xbuild напрямую, так что вы можете удалить 'Cake' из уравнения? – user1623521

ответ

4

Вы можете попробовать вместо использования XBuild псевдонимов использовать Cake.Xamarin надстройки, которая обеспечивает MDToolBuild псевдонима для mdtool, который использует Monodevelop без графического интерфейса для скомпилируйте свое решение.

public static void MDToolBuild(
     FilePath projectOrSolutionFile, 
     Action<MDToolSettings> settings 
) 

Пример использования в Cake сценария:

#addin "Cake.Xamarin" 

MDToolBuild(
    "./mySolution.sln", 
    settings=> { settings.Configuration = "Debug"; }, 
); 
+0

Ваше обходное решение работает отлично. Огромное спасибо. Тем не менее, мне было бы интересно узнать, почему у меня такое поведение с XBuild. –

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