安装XamarinInstaller.exe时出现问题

时间:2016-08-10 14:48:07

标签: java c# android xamarin

以前,Xamarin一直在Windows 10版本1511上为我工作,但后来我更新到Windows 10 1607,并且Visual Studio一直警告我有更新,说" Xamarin用于Visual Studio更新可用。& #34;我一直点击它,但没有发生任何事情,所以最后,我去了工具 - > "扩展和更新"并搜索了Xamarin,我在那里下载并运行了XamarinInstaller.exe。问题是我的互联网部分切断,因此安装没有完成,所以现在当我尝试运行Xamarin.Android项目时,我收到此错误:

...
1>Skipping target "_CompileJava" because all output files are up-to-date with respect to the input files.
1>Skipping target "_CreateAdditionalResourceCache" because it has no outputs.
1>C:\Program Files (x86)\Java\jdk1.7.0_55\\bin\java.exe -jar "C:\Program Files (x86)\Android\android-sdk\build-tools\24.0.1\\lib\dx.jar" --no-strict --dex --output=obj\Debug\android\bin obj\Debug\android\bin\classes "C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v4.4\mono.android.jar" 
1>java.lang.UnsupportedClassVersionError: com/android/dx/command/Main : Unsupported major.minor version 52.0
1>  at java.lang.ClassLoader.defineClass1(Native Method)
1>  at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
1>  at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
1>  at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
1>  at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
1>  at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
1>  at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
1>  at java.security.AccessController.doPrivileged(Native Method)
1>  at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
1>  at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
1>  at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
1>  at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
1>  at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
1>Exception in thread "main" 
1>java.lang.UnsupportedClassVersionError: com/android/dx/command/Main  :  Unsupported major.minor version 52.0
1>Done building project "MyProject.Droid.csproj" -- FAILED.
1>Build FAILED.
1>
========== Deploy: 0 succeeded, 1 failed, 0 skipped ==========

我更新了我的java(参见Android NDK: Your APP_BUILD_SCRIPT points to an unknown file):

C:\Program Files (x86)\Java\jdk1.7.0_55

要,

C:\Program Files\Java\jdk1.7.0_79

修正了以下错误,

Severity    Code    Description Project File    Line    Suppression State
Error       java.lang.UnsupportedClassVersionError: com/android/dx/command/Main  :  Unsupported major.minor version 52.0    TuberEduMobile.Droid    C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets   2159

但这并没有解决上面的第一个问题。另外,我下载了android-ndk-r12b,但是当我尝试使用ndk-build进行构建时,我收到了这个错误:

Android NDK: Your APP_BUILD_SCRIPT points to an unknown file: C:\projects\android-ndk-r12b/jni/Android.mk
C:/projects/android-ndk-r12b/build//../build/core/add-application.mk:198: *** Android NDK: Aborting...    .  Stop.

有没有人有任何建议?我怎样才能让我的Xamarin.Android再次工作? TIA。

更新

感谢您的建议,@ Alan Clark。尝试使用您指定的链接卸载并使用XamarinInstaller.exe重新安装Xamarin,甚至从我的计算机上删除了旧的Java jdk1.7.0_55,即使我转到Options -> Xamarin -> Android Settings它也说Java Development Kit Location :

C:\Program Files\Java\Jdk1.7.0_79

但由于某种原因,它仍然指向该目录的旧目录,因为当我尝试构建我的Xamarin.Android解决方案时出现此错误:

1>C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(2159,3): error MSB6004: The specified task executable location "C:\Program Files (x86)\Java\jdk1.7.0_55\\bin\java.exe" is invalid.

请注意,它指向此NDK:

C:\Program Files\Android\ndk\android-ndk\r11c

不确定它是否与我的具体问题有关。

有没有人有任何建议? TIA。

2 个答案:

答案 0 :(得分:3)

通过在Options -> Xamarin -> Android Settings -> Java Development Kit Location中将JDK更改为1.8.0_91来解决问题:

C:\Program Files\Java\jdk1.8.0_91

此外,必须确保此文件具有到Java JDK的正确路径:

~\MyProject.Droid\obj\Debug\sdks.cache

答案 1 :(得分:1)

在这种情况下,并假设其他组件可能因辍学而中断,我会建议完整uninstall并重新安装Xamarin(如果引起问题,也可能重新安装JDK)。请确保您遵循指南中的所有步骤,以确保在重新安装之前删除所有Xamarin痕迹。