Development
Now Reading
Azure Service Fabric: warning per incompatibilità dell'architettura della CPU di una libreria
0

Azure Service Fabric: warning per incompatibilità dell'architettura della CPU di una libreria

Sviluppando una applicazione per Azure Service Fabric e aggiungendo una libreria .NET Standard al progetto ci si potrebbe imbattere in una serie di warning di Visual Studio come questo

Warning MSB3270 There was a mismatch between the processor architecture of the project being built “MSIL” and the processor architecture of the reference “C:\[…]”, “AMD64”. This mismatch may cause runtime failures. Please consider changing the targeted processor architecture of your project through the Configuration Manager so as to align the processor architectures between your project and references, or take a dependency on references with a processor architecture that matches the targeted processor architecture of your project.

Si tratta di un warning che indica che l’architettura selezionata per la CPU non è l’unica supportata da Azure Service Fabric e cioè x64. Probabilmente l’impostazione è AnyCPU e la libreria funzionerà correttamente ma per fare sparire i warning è sufficiente modificare il target di compilazione nell’apposita sezione Build di Visual Studio:

oppure impostare l’architettura target direttamente nel file .csproj del progetto:

<PropertyGroup>
    <TargetFramework>netcoreapp2.0</TargetFramework>
    <PlatformTarget>x64</PlatformTarget>
    <RootNamespace>Microsoft.*.Tests</RootNamespace>
</PropertyGroup>

E’ sufficiente salvare il file ed effettuare una nuova compilazione : non si dovrebbero visualizzare altri warning.

Ovviamente bisogna ricordare che questa modifica renderà inutilizzabile la libreria nel contesto di una applicazione a 32bit.

What's your reaction?
Love It
0%
Interested
0%
Meh...
0%
What?
0%
Hate it
0%
Sad
0%
Laugh
0%
Sleep
0%
Wow !
0%
About The Author
The Server-Side Technology Staff
The Server-Side Technology Staff
You must unlearn what you have learned.

Leave a Response