“android update sdk”在无头Linux上
有没有人成功地在无头Linux服务器上更新/安装Android SDK平台? 我得到的是以下错误:
这似乎是行动“更新sdk”实际上不支持?
~/android-sdk-linux_86/tools$ ./android --verbose update sdk No command line parameters provided, launching UI. See 'android --help' for operations from the command line. Exception in thread "main" java.lang.UnsatisfiedLinkError: no swt-pi-gtk-3550 or swt-pi-gtk in swt.library.path, java.library.path or the jar file at org.eclipse.swt.internal.Library.loadLibrary(Unknown Source) at org.eclipse.swt.internal.Library.loadLibrary(Unknown Source) at org.eclipse.swt.internal.gtk.OS.<clinit>(Unknown Source) at org.eclipse.swt.internal.Converter.wcsToMbcs(Unknown Source) at org.eclipse.swt.internal.Converter.wcsToMbcs(Unknown Source) at org.eclipse.swt.widgets.Display.<clinit>(Unknown Source) at com.android.sdkuilib.internal.repository.UpdaterWindowImpl.open(UpdaterWindowImpl.java:93) at com.android.sdkuilib.repository.UpdaterWindow.open(UpdaterWindow.java:110) at com.android.sdkmanager.Main.showMainWindow(Main.java:281) at com.android.sdkmanager.Main.doAction(Main.java:251) at com.android.sdkmanager.Main.run(Main.java:92) at com.android.sdkmanager.Main.main(Main.java:81)
更新 :前一个问题是在不支持无头更新的时候问的。 现在可以做一个android update sdk --no-ui
。 谢谢大家!
更新的Android SDK无头和自动描述是在这种方式自动化的android-sdk的安装
你可以使用--no-ui
选项:
android update sdk --no-ui
如果你想自动化,你可以通过使用expect
工具来接受所有的许可证( --accept-license
选项目前没有完全集成在android
工具中):
expect -c ' set timeout -1; spawn android - update sdk --no-ui; expect { "Do you accept the license" { exp_send "y\r" ; exp_continue } eof } '
我遇到了同样的问题。 我发现了一个解决方法。
第一个是cop-out:在一个有头的系统上下载平台,并简单地将platform子目录复制到你的android sdk / platforms目录中。
如果像我一样,你没有立即访问另一个领先的android开发环境,你可以去Google的SDK档案,并下载包括平台的其他SDK之一。 这意味着你只能为Android 1.1和1.5开发。
下载得到的Linux系统是他们的Android 1.5 R3。 当然,谷歌的SDK下载页面不是猫眼友好的,所以我不得不从另一个GUI系统直接链接。
wget http://dl.google.com/android/archives/android-sdk-linux_x86-1.5_r3.zip
然后,只需解压缩存档,然后将平台sibdirs移到您的较新的SDK平台dir。
android create avd -t 3 -p path/to/avd/dir -n "name"
这将为您的指定名称和目录创build1.5平台的AVD。 请注意avd dir不应该存在。 如果要覆盖,请将–force添加到命令中。
到此为止,已经安装了一个平台并创build了一个AVD。 不幸的是,现在试图构build失败,因为我运行一个64位服务器,而谷歌只发布32位工具。
我在这个stackoverflow问题的公认答案中find了解决scheme,并使用sudo apt-get install ia32-libs
来启用运行32位工具的能力。
那么你应该可以在CLI上使用android工具来转换一个eclipse项目(1.5或更低版本)来创build一个ant构build系统,或者你可以让它创build一个新的项目供你开始工作。
希望这可以帮助!
是的,它可以工作,但是您需要安装GUI库,并且您需要将DISPLAY设置为要显示的X服务器。 我现在正在CentOS 5.4上工作,不得不使用“服务器 – graphics用户界面”对“服务器”安装选项。 然后,我只是使用“ssh -X”从我希望它显示的系统。
我刚刚创build了一个小命令行工具,可以在任何环境(GUI或非GUI)中执行更新。 没有机会进行广泛的testing,但据我所知,它应该做什么。
命令行工具使用所有当前可用的平台,附加软件,附加软件,文档,示例和工具更新预装的基本Android SDK。 对于构build服务器来说,这应该足够了(我需要使用Maven的Hudson CI安装)。
请到这里了解更多详情: