安装Xamarin Mono for Android:安装程序无法看到已安装的SDK

3
在安装Xamarin Mono for Android时,它显示无法找到Java SDK和Android SDK,并开始下载它们。但我已经安装了Java SDK和Android SDK。
我查看了安装日志(c:\users\\appdata\local\xamarin\monoforandroid),发现它正在寻找注册表键:'SOFTWARE\Wow6432Node\JavaSoft\Java Development Kit', 值'CurrentVersion'和'SOFTWARE\JavaSoft\Java Development Kit', 值'CurrentVersion'。但是它没有找到。我在注册表中查看,发现存在键'HKLM\SOFTWARE\JavaSoft\Java Development Kit'。
为什么安装程序看不到这个键?
以下是日志详细信息:
[Info] Checking whether JDK needs to be installed.
[Debug] Attempting to read registry subkey 'SOFTWARE\Wow6432Node\JavaSoft\Java Development Kit', value 'CurrentVersion'
[Debug] Attempting to read registry subkey 'SOFTWARE\JavaSoft\Java Development Kit', value 'CurrentVersion'
[Info] JDK not detected.
[Info] JDK 1.6 needs to be installed.

有没有一种方法可以告诉安装程序Java SDK和Android SDK已经安装了?

一般来说,Mono for Android安装程序会执行自己的逻辑,您应该接受它。他们已经删除了手动安装指南,我认为这导致了比解决问题更多的麻烦。 - Lex Li
2个回答

3
我曾经遇到了与Xamarin安装程序相似的问题。我通常会让Xamarin安装程序自动帮我进行设置,但它没有工作。所有工具都已安装并似乎可用,但我无法启动设备以运行示例“Hello World”应用程序。我怀疑这是因为SDK的默认安装位置(在安装过程中我没有被提示!)似乎在c:\users\\ appdata...,但我所在办公室的IT政策使它成为一个有点奇怪的同步驱动器,所以我发现大多数事情都不能正常工作。
为了解决这个问题,我下载了ADT包,想着除了拥有SDK之外,我可能还想通过eclipse来玩一下可视化设计。通过一些谷歌搜索和解析安装日志,我意识到需要一些注册表键才能使设置实用程序找到SDK。将以下内容放入adt.reg中并运行即可解决问题。
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Android SDK Tools]
"Path"="C:\\lib\\adt-bundle-windows\\sdk"

[HKEY_CURRENT_USER\SOFTWARE\Android SDK Tools]
"Path"="C:\\lib\\adt-bundle-windows\\sdk"

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Android SDK Tools]
"Path"="C:\\lib\\adt-bundle-windows\\sdk"

[HKEY_LOCAL_MACHINE\SOFTWARE\Android SDK Tools]
"Path"="C:\\lib\\adt-bundle-windows\\sdk"

Xamarin的设置似乎仍然想更新sdk。我特别喜欢日志中的这一行。

组件'Android SDK' v. 21.0.0.0已存在但需要更新为v. 20

至少现在似乎一切都在运行。


1
安装程序试图在注册表的“当前用户”部分中查找密钥。但是Java JDK(以及其他产品)的安装程序将其放置在“本地机器”部分。
修复!
可以使用脚本启动注册表编辑器(regedit.exe)来使用命令,这只是一个带有*.reg扩展名的文本文件。
● 打开记事本!
● 粘贴以下内容。

http://pastebin.com/XECCj5Mm

如果您已经安装了1.7 JDK,请使用此版本!

http://pastebin.com/QSSasyzS

● 将文件保存为anything.reg!确保您选择“所有文件()”作为“另存为类型”!

● 双击您保存的*.reg文件!如果您正在运行 => vista,则单击UAC消息中的“确定”。单击注册表编辑器中有关将*.reg文件内容合并到系统注册表的消息中的“确定”。

● 单击信息消息中的“确定”。

● 重新启动Xamarin Mono for Android安装程序。

至于缺少的Android SDK,您可能会缺少它,所以让设置程序下载它!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接