SDK 管理器在 cmd 中执行但未打开

Posted

技术标签:

【中文标题】SDK 管理器在 cmd 中执行但未打开【英文标题】:SDK Manager is executing in cmd but not opening 【发布时间】:2013-08-22 14:51:53 【问题描述】:

配置详情:

Windows 8 专业版 32 位

adt-bundle-windows-x86-20130717

jdk-6u26-windows-i586 32bit

目录:

对于 Java - C:\Program Files\Java\jdk1.6.0_26

对于 android 根目录 - Z:\Program Files\Android

对于 Android SDK - Z:\Program Files\Android\sdk

环境变量:

var_name: JAVA_HOME

var_value: C:\Program Files\Java\jdk1.6.0_26\

var_name: JDK_HOME

var_value: C:\Program Files\Java\jdk1.6.0_26\

var_name:路径

var_value: C:\Program Files\Java\jdk1.6.0_26\bin

修改: 1) 设置 java_exe= "%JAVA_HOME%\bin\java.exe" 如果没有定义 java_exe goto :EOF

2) for /f %%a in ('"%~dps0\find_java.exe" -s') 设置 java_exe=%%a

3) for /f %%a in ('"%~dps0\find_java.exe" -s -w') 设置 javaw_exe=%%a

首先我下载了​​ adt-bundle,然后解压缩到 Android 根目录(我之前安装了 java),然后我从 https://dl-ssl.google.com/android/eclipse/ 安装了 ADT 插件,并成功地将 Eclipse IDE 与 Android SDK 连接起来。现在我正在尝试使用 Android SDK 组件,但是当我在 Eclipse 中单击 Window-> Android SDK Manager 时,会打开一个对话框,说 SDK Manager 将在一段时间内打开,但它没有打开。每当我尝试打开 SDK 管理器时,每次 cmd 提示一秒钟然后消失,而 AVD 管理器正常打开时什么也没有发生。

然后我在几个论坛中查看了一些解决方案并修改了一些代码行(在 tools\android.bat 中修改 1;在 tools\lib\find_java.bat 中修改 2 和 3)

现在在命令行中

Z:\Program Files\Android\sdk\tools>android
Usage: java [-options] class [args...]
           (to execute a class)
   or  java [-options] -jar jarfile [args...]
           (to execute a jar file)

where options include:
    -client       to select the "client" VM
    -server       to select the "server" VM
    -hotspot      is a synonym for the "client" VM  [deprecated]
                  The default VM is client.

    -cp <class search path of directories and zip/jar files>
    -classpath <class search path of directories and zip/jar files>
                  A ; separated list of directories, JAR archives,
                  and ZIP archives to search for class files.
    -D<name>=<value>
                  set a system property
    -verbose[:class|gc|jni]
                  enable verbose output
    -version      print product version and exit
    -version:<value>
                  require the specified version to run
    -showversion  print product version and continue
    -jre-restrict-search | -jre-no-restrict-search
                  include/exclude user private JREs in the version search
    -? -help      print this help message
    -X            print help on non-standard options
    -ea[:<packagename>...|:<classname>]
    -enableassertions[:<packagename>...|:<classname>]
                  enable assertions
    -da[:<packagename>...|:<classname>]
    -disableassertions[:<packagename>...|:<classname>]
                  disable assertions
    -esa | -enablesystemassertions
                  enable system assertions
    -dsa | -disablesystemassertions
                  disable system assertions
    -agentlib:<libname>[=<options>]
                  load native agent library <libname>, e.g. -agentlib:hprof
                    see also, -agentlib:jdwp=help and -agentlib:hprof=help
    -agentpath:<pathname>[=<options>]
                  load native agent library by full pathname
    -javaagent:<jarpath>[=<options>]
                  load Java programming language agent, see java.lang.instrument

    -splash:<imagepath>
                  show splash screen with specified image

Z:\Program Files\Android\sdk\tools>

如您所见,我的尝试成功并且 android.bat 正在执行,但问题是 当我尝试直接或通过 IDE 再次打开 SDK 管理器时,除了在 cmd 中执行之外什么也没发生。我不能了解实际发生的情况,我无法在任何论坛中找到与此相关的任何内容。请帮忙。提前致谢。

【问题讨论】:

如果通过cmd打开会不会报错? 不,每当我尝试在 cmd 中打开 android.bat 时,它都会返回一些我在代码视图中编写的行,而不是任何类型的错误。 【参考方案1】:

在您的 PATH 环境变量中,将 *C:\Program Files\Java\jdk1.6.0_26\bin* 移动到集合的开头,看看是否可以解决问题。

【讨论】:

【参考方案2】:

您的 sdk 安装的目录结构很可能发生了变化。尝试从 sdk 目录运行 android.bat

Z:\Program Files\Android\sdk>tools\android.bat

如果 sdk Manager 打开(关闭它)并将 android.bat 中的 work_dir 设置为 sdk 目录。在android.bat中换行

set work_dir="%cd%"

set work_dir="Z:\Program Files\Android\sdk"

或到

set work_dir="%~dp0.." 

如果上述方法不起作用,请尝试获取更多信息,调用 java 出了什么问题,将 java 调用输出到控制台。在 android.bat 中换行

call %java_exe% .....

echo call %java_exe% .....

祝你好运

【讨论】:

【参考方案3】:

android.bat 似乎在从我的 Windows 系统上安装的 samba 共享运行时出现问题。这解决了我的问题。

V:\>android
Usage: java [-options] class [args...]
           (to execute a class)
   or  java [-options] -jar jarfile [args...]
           (to execute a jar file)
[snip]
V:\>c:
C:\Users\me>android

【讨论】:

【参考方案4】:

我遇到了同样的问题,我发现批处理文件开头的“set”命令都没有正常工作。 prog 设置为 ~f0。 work_dir 为空 cd /d ~dp0 导致错误“文件名、目录名或卷标语法不正确。”

Android.bat 需要启用命令扩展才能正确运行。

恢复原始批处理文件并编辑此行 来自... 设置本地 到... setlocal enableExtensions

这应该正确设置所有环境变量,以便它们不需要硬编码。

您还可以在注册表中启用命令扩展。进行此更改后重新启动。 HKEY_CURRENT_USER\Software\Microsoft\Command Processor\EnableExtensions = 1

【讨论】:

以上是关于SDK 管理器在 cmd 中执行但未打开的主要内容,如果未能解决你的问题,请参考以下文章

win7资源管理器在哪

SQL Server 配置管理器在哪里找的?

ubuntu 资源管理器 在哪里打开

cmd命令行窗口和文件目录资源管理器快速切换

电脑里的:视图 windows资源管理器 在哪里啊。。。

Android SDK 管理器在选择存储库时出现“无法获取 URL https://dl-ssl.google.com/android/repository/repository.xml”错误