3

在为 Android 安装 Xamarin Mono 时,它说找不到 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?

4

2 回答 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

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

于 2012-11-21T21:12:37.673 回答
1

安装程序会尝试在注册表的“当前用户”部分中查找密钥。但是 Java JDK(以及其他产品)安装程序将其放置在“本地机器”部分。

使固定!

注册表编辑器 (regedit.exe) 可以使用脚本通过命令启动,只不过是带有 *.reg 扩展名的文本文件。

● 打开记事本!

● 粘贴以下内容。

http://pastebin.com/XECCj5Mm

如果您安装了 1.7 JDK,请使用它!

http://pastebin.com/QSSasyzS

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

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

● 单击“确定”获取信息消息。

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

至于缺少的 Android SDK,您可能缺少这些,所以让安装程序下载吧!

于 2012-10-26T11:53:05.890 回答