MvvMCross 3.0.6 Nuget package installation issue - visual-studio-2012

I am trying to install MVVMCross NuGet package using NuGet 2.5 version. I have added the mono android and touch file to Profile104 folder. Still I am getting following exception:
Attempting to resolve dependency 'MvvmCross.HotTuna.StarterPack (≥ 3.0.6)'.
Attempting to resolve dependency 'MvvmCross.HotTuna.CrossCore (≥ 3.0.6)'.
Attempting to resolve dependency 'MvvmCross.PortableSupport (≥ 3.0.6)'.
Installing 'MvvmCross.PortableSupport 3.0.6'.
Successfully installed 'MvvmCross.PortableSupport 3.0.6'.
Installing 'MvvmCross.HotTuna.CrossCore 3.0.6'.
Successfully installed 'MvvmCross.HotTuna.CrossCore 3.0.6'.
Installing 'MvvmCross.HotTuna.StarterPack 3.0.6'.
Successfully installed 'MvvmCross.HotTuna.StarterPack 3.0.6'.
Installing 'MvvmCross 3.0.6'.
Successfully installed 'MvvmCross 3.0.6'.
Adding 'MvvmCross.PortableSupport 3.0.6' to PortableClassLibrary1.
Uninstalling 'MvvmCross.PortableSupport 3.0.6'.
Successfully uninstalled 'MvvmCross.PortableSupport 3.0.6'.
Install failed. Rolling back...
Could not install package 'MvvmCross.PortableSupport 3.0.6'.
You are trying to install this package into a project that targets
'portable-win+net45+MonoAndroid16+MonoTouch40+sl40+wp', but the
package does not contain any assembly references or content files that
are compatible with that framework. For more information, contact the
package author.
I have selected following option when creating a new PCL Library project
Following are the content for the xml files from C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETPortable\v4.0\Profile\Profile104\SupportedFrameworks folder
.NET for Windows Store apps.xml
<?xml version="1.0" encoding="utf-8"?>
<Framework
Identifier=".NETCore"
Profile="*"
MinimumVersion="4.5"
DisplayName=".NET for Windows Store apps"
MinimumVersionDisplayName="" />
.NET Framework 4.5
<?xml version="1.0" encoding="utf-8"?>
<Framework
Identifier=".NETFramework"
Profile="*"
MinimumVersion="4.5"
DisplayName=".NET Framework"
MinimumVersionDisplayName="4.5" />
MonoAndroid.xml
<?xml version="1.0" encoding="utf-8"?>
<Framework DisplayName="Mono for Android"
Identifier="MonoAndroid"
Profile="*"
MinimumVersion="1.6"
MaximumVersion="*" />
MonoTouch.xml
<?xml version="1.0" encoding="utf-8"?>
<Framework
DisplayName="MonoTouch"
Identifier="MonoTouch"
Profile="*"
MaximumVersion="*"
MinimumVersion="4.0" />
Silverlight 4.xml
<?xml version="1.0" encoding="utf-8"?>
<Framework
Identifier="Silverlight"
Profile=""
MinimumVersion="4.0"
DisplayName="Silverlight"
MinimumVersionDisplayName="4" />
VSMonoTouch.xml
<?xml version="1.0" encoding="utf-8"?>
<Framework DisplayName="VS MonoTouch"
Identifier=".NETFramework"
Profile="*"
MinimumVersion="1.0"
MaximumVersion="1.0" />
Windows Phone 7.5.xml
<?xml version="1.0" encoding="utf-8"?>
<Framework
Identifier="Silverlight"
Profile="WindowsPhone7*"
MinimumVersion="4.0"
DisplayName="Windows Phone"
MinimumVersionDisplayName="7.5" />
I am using Visual Studio 2012 Ultimate Update 2 on Windows Server 2012 64 bit edition. Can someone point me in right direction.

It looks like you are targeting Windows Phone 7.0 in your Portable Class Library. Try switching to Windows Phone 7.5 and see if that helps. If not, try posting a screenshot of the PCL "choose targets" screen, as well as the contents of all the XML files you've added to the "SupportedFrameworks" folder.
EDIT: Try deleting VSMonoTouch.xml (and restarting Visual Studio afterwards).

The workaround mentioned on a comment on Stuart's blog (at http://slodge.blogspot.co.uk/2013/04/n0-first-mvvmcross-application-n1-days.html) worked for me:
Remove Mono for Android, MonoTouch, VS MonoTouch and Windows Phone from the Target Frameworks in the Core project properties. Install MvvmCross NuGet package. Add the Target Frameworks back in.

I just got an update to the NuGet.
It looks like it's working now.
Here are the steps to have MVVM Cross on a new project:
Create a new project Xamarin Android
Create a new project PCL library (select Mono Android, MonoTouch, and Windows Phone 7.5 and higher).
Add MVVMCross NuGet on both the app and PCL
Add the library as reference to the app
Without adding the MVVMCross also to the app, I get an error on compilation.

I have the same issue
Could not install package 'MvvmCross.PortableSupport 3.0.6'. You are
trying to install this package into a project that targets
'portable-win+net45+MonoAndroid16+MonoTouch40+sl40+wp71', but the
package does not contain any assembly references or content files that
are compatible with that framework. For more information, contact the
package author.
Per http://slodge.blogspot.co.uk/2013/04/my-current-pcl-setup-in-visual-studio.html, I do not have VSMonoTouch, just the two files (MonoAndroid,Version=v1.6+.xml and MonoTouch,Version=v1.0+.xml)
I also tried to
"Remove Mono for Android, MonoTouch, VS MonoTouch and Windows Phone from the Target Frameworks in the Core project properties. Install MvvmCross NuGet package. Add the Target Frameworks back in."
But when I try to compile, I get this error:
Error 1 Exception while loading assemblies:
System.IO.FileNotFoundException: Could not load assembly
'System.Windows, Version=2.0.5.0, Culture=neutral,
PublicKeyToken=7cec85d7bea7798e'. Perhaps it doesn't exist in the Mono
for Android profile? File name: 'System.Windows.dll' at
Xamarin.Android.Tuner.DirectoryAssemblyResolver.Resolve(AssemblyNameReference
reference, ReaderParameters parameters) at
Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(List1
assemblies, AssemblyDefinition assembly) at
Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(List1
assemblies, AssemblyDefinition assembly) at
Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(List`1
assemblies, AssemblyDefinition assembly) at
Xamarin.Android.Tasks.ResolveAssemblies.Execute() MyProject

I face this issue too. After googling to find solution I found that I use Nuget version 2.4
I upgrade my nuget to 2.6 and it run smoothly.
You can download nuget 2.6 here: Nuget 2.6

I wrote a step by step post for creating a simple Android app from scratch using PCL
http://enginecore.blogspot.ro/2013/05/first-app-with-xamarin-android-and.html

Related

Reboot not required for .NET 4.0 after VS2012 runtime installation

My WPF application was running fine when built on VS2010 and using WiX3.5. I changed to VS2012 and installed the VS2012 runtime using Wix as below:
<DirectoryRef Id="TARGETDIR">
<Merge Id="VC110RedistCRT" SourceFile="C:\Program Files (x86)\Common Files\Merge Modules\Microsoft_VC110_CRT_x86.msm" DiskId="1" Language="0"/>
<Merge Id="VC110RedistMFC" SourceFile="C:\Program Files (x86)\Common Files\Merge Modules\Microsoft_VC110_MFC_x86.msm" DiskId="1" Language="0"/>
</DirectoryRef>
<Feature Id="VC110Redist" Title="Visual C++ 11.0 Runtime" AllowAdvertise="no" Display="hidden" Level="1">
<MergeRef Id="VC110RedistCRT"/>
<MergeRef Id="VC110RedistMFC"/>
</Feature>
Earlier with VS2010, application installation on new machine used to ask for reboot while installing .NET framework. Now with VS2012, it doesn't ask for reboot and application is running fine also.
I just wanted to know the possible reason and any side effects of this. Any details of how the C++ runtime and .Net Framework installation work with each other will be helpful.
Thanks

Wix merge modules vc++ 9.0 SP1 not installing

I have a Wix installer that I have added the merge modules to for the last version of the VC++ 9.0 runtime. I've opened the .msm files with Orca to verify that they are the latest version, 9.0.30729.6161. I include the CRT msm in my installer just as it is done in the example on the Wix site:
<Fragment>
<DirectoryRef Id="TARGETDIR">
<?if $(var.Platform) = x64 ?>
<Merge Id="VCRedist" SourceFile="$(env.CommonProgramFiles)\Merge Modules\Microsoft_VC90_CRT_x86_x64.msm" DiskId="1" Language="0"/>
<?else?>
<Merge Id="VCRedist" SourceFile="$(env.CommonProgramFiles)\Merge Modules\Microsoft_VC90_CRT_x86.msm" DiskId="1" Language="0"/>
<?endif ?>
</DirectoryRef>
</Fragment>
Then in my features file:
<MergeRef Id="VCRedist" />
When I run the installer with logging on, I can see that the files are moved to the side by side directory, C:\Windows\winsxs. When I run my application, it does not recognize that the CRT is available.
If I run the redistributable installer from here, everything works as expected. I've tried including all the merge modules with no luck.
Any ideas?
Using the policy merge modules got it working for me.

Unable to resolve JetBrains.ReSharper.SDK while installing a ReSharper's plugin

I'm trying to install a custom ReSharper's plugin I wrote using the ReSharper Extension Manager but I get the error
Attempting to resolve dependency 'JetBrains.ReSharper.SDK (≥
8.2.1158)'.
Unable to resolve dependency 'JetBrains.ReSharper.SDK (≥ 8.2.1158)'.
I followed the official documentation and here is my .nuspec.
<?xml version="1.0"?>
<package >
<metadata>
<id>CustomMacro</id>
<version>1.0.0.0</version>
<title>Custom macro</title>
<authors>Me</authors>
<description>do something</description>
<copyright>Copyright © 2014</copyright>
<tags>Cool Plugin</tags>
<dependencies>
<dependency id="ReSharper" version="[8.2,8.3]" />
</dependencies>
</metadata>
<files>
<file src="bin\Release\*.dll" target="ReSharper\vAny\vs12.0\plugins" />
</files>
</package>
Note: The nuget packaged is pushed inside my company's nuget repository and when I search for the package in the Extension Manager I do it from Online -> All tag
That .nuspec file looks fine, but doesn't match the error message. The error message indicates that the .nupkg has a dependency on "JetBrains.ReSharper.SDK". ReSharper uses NuGet packages in a runtime capacity, so development dependencies shouldn't be included. When installing, ReSharper will try to resolve any dependencies and install them (as runtime extensions, not assembly references). The "JetBrains.ReSharper.SDK" package is a nuget assembly reference package, and isn't required, or available on ReSharper's extension package gallery, so it fails to install.
I'd suggest getting NuGet Package Explorer and double clicking on the .nupkg to see if it's got the same .nuspec as you've shown.
Also, you should be copying the *.dll files into ReSharper\v8.2\plugins. It can't live in vAny because ReSharper plugins are compiled against specific versions of ReSharper. And it should only go in the vs12.0 folder if it's specific to Visual Studio 2013, i.e. it uses VS2013 assemblies and functionality.

NuGet version constraints doesn't work

I have Project which references from NuGet repository Module of version 1.0.0.0.
For some time Module versions are changed to 1.1.0.0, 1.1.0.1, 1.1.1.0, 1.1.5.0, 1.2.0.0, 1.2.1.0. And my Project supports just 1.1.X.X versions set. And the latest version NuGet should upgrade Project reference is 1.1.5.0, but NuGet suggests 1.2.1.0.
Due this article: http://docs.nuget.org/docs/reference/versioning I need to modify packages.config of my Project and set 'allowedVersions' attribute:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Module" version="1.0.0.0" allowedVersions="[1.1,1.2)" />
</packages>
Does NuGet supports constraints on minor versions?
NuGet version is 2.7.41101.299
can you please provide more details about your project type and the packages installed? or a simplified repro app is fine, which will help us diagnosis the issue.
Btw, the latest version of NuGet is 2.7.2, which can be downloaded at http://docs.nuget.org/docs/start-here/installing-nuget. Please see if your issue still reproes with the latest version. Thanks!

Adding NuGet ndef library to windows phone 8 project

So I tried to add the NDEF library for proximity application in Visual Studio 2012 for a Windows Phone 8 app. In Package Manager I checked Allow NuGet to download missing packages during build and in the Solution Explorer I selected Enable NuGet Package Restore.
So far so good, but when i try to install the package I get the following error:
Could not install package 'NdefLibrary 0.9.0.1'. You are trying to install this package into a project that targets 'WindowsPhone,Version=v8.0', but the package does not contain any assembly references that are compatible with that framework. For more information, contact the package author.
This works fine on my dev box. Here's the output from my NuGet package manager on a WP8 project:
PM> Install-Package NdefLibrary
You are downloading NdefLibrary from Andreas Jakl, the license agreement to which is available at https://ndef.codeplex.com/license. Check the package for additional dependencies, which may come with their own license agreement(s). Your use of the package and dependencies constitutes your acceptance of their license agreements. If you do not accept the license agreement(s), then delete the relevant components from your device.
Successfully installed 'NdefLibrary 0.9.0.1'.
Successfully added 'NdefLibrary 0.9.0.1' to Wp8TestApp.
What you're probably missing is to update your NuGet package manager to the latest version. Go to Visual Studio File Menu --> Tools --> Extensions and Updates --> Updates --> Visual Studio Gallery --> NuGet --> Update and finally you'll need to restart. The reason why this update is needed is that the NuGet version that ships with VS2012 RTM doesn't support WP8 since WP8 didn't RTM before VS2012 did.

Resources