Msbuild 如何在Mono';s xbuild是否使用.NET3.5框架?

Msbuild 如何在Mono';s xbuild是否使用.NET3.5框架?,msbuild,mono,xamarin.ios,.net-3.5,xbuild,Msbuild,Mono,Xamarin.ios,.net 3.5,Xbuild,我正在尝试使用xbuild(显然是在Mac上)构建一个MonoTouch项目。以下是我的xbuild项目: <Project DefaultTargets="Application" ToolsVersion="3.5" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> <ApplicationProjectFilePath>..\T

我正在尝试使用xbuild(显然是在Mac上)构建一个MonoTouch项目。以下是我的xbuild项目:

<Project DefaultTargets="Application" ToolsVersion="3.5" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <PropertyGroup>
        <ApplicationProjectFilePath>..\TestApp\TestApp.csproj</ApplicationProjectFilePath>    
        <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
        <MonoTouchReferencePath>/Developer/MonoTouch/usr/lib/mono/2.1/</MonoTouchReferencePath>
    </PropertyGroup>

    <Target Name="Application">
        <MSBuild Projects="$(ApplicationProjectFilePath)" Targets="Rebuild" Properties="Configuration=AdHoc;Platform=iPhone;ReferencePath=$(MonoTouchReferencePath)" ToolsVersion="3.5"/>
    </Target>
</Project>
如何获得框架的xbuild参考v3.5?正如您从脚本中看到的,我尝试了许多方法,但似乎都不起作用


[此外,我不确定为什么我必须明确引用monotouch.dll库-因为它在项目文件(TestApp.csproj)中被引用。对此的任何评论也将不胜感激。]

monotouch使用Silverlight framework的超集,而不是3.5,目前MonoTouch及其框架版本还没有xbuild目标。实现这一点需要覆盖框架程序集解析的自定义目标,如Silverlight和MonoDroid目标

现在,我建议您使用MonoDevelop命令行工具mdtool的build命令,即

/Applications/MonoDevelop.app/Contents/MacOS/mdtool build

MonoTouch使用Silverlight框架的超集,而不是3.5,目前MonoTouch及其框架版本没有xbuild目标。实现这一点需要覆盖框架程序集解析的自定义目标,如Silverlight和MonoDroid目标

现在,我建议您使用MonoDevelop命令行工具mdtool的build命令,即

/Applications/MonoDevelop.app/Contents/MacOS/mdtool build