Pregunta

Estoy tratando de construir un proyecto utilizando xbuild MonoTouch (en un Mac, claro). Aquí está mi proyecto 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>

Cuando ejecuto esto, me sale el siguiente mensaje de advertencia:

/Library/Frameworks/Mono.framework/Versions/2.6.7/lib/mono/3.5/Microsoft.Common.targets:  warning : Found a conflict between : 'System.Core, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e' and 'System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'. Using 'System.Core, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e' reference.

¿Cómo puedo tener xbuild v3.5 referencia del marco? Como se verá a partir de la secuencia de comandos, lo he intentado varias approachs, ninguno de los cuales parecen estar funcionando.

[Además, no estoy seguro de por qué tengo que hacer referencia explícita a la biblioteca monotouch.dll - teniendo en cuenta que se hace referencia en el archivo de proyecto (testApp.csproj). Cualquier comentario sobre que también sería apreciada.]

¿Fue útil?

Solución

MonoTouch utiliza un superconjunto del marco de Silverlight, no 3.5, y actualmente hay objetivos sin xbuild para MonoTouch y su versión del marco. La implementación de este requerirá objetivos personalizados que resolución de la Asamblea marco de anulación, al igual que los objetivos de Silverlight y MonoDroid.

Por ahora, le sugiero que utilice el comando de generación de la herramienta de línea de comandos de MonoDevelop, mdtool, es decir.

/Applications/MonoDevelop.app/Contents/MacOS/mdtool build
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top