title: Android SDK and AVD Manager will not run
body: <p>I installed the Android SDK but I cannot use it because the AVD and SDK Managers do not run. When I try to open either one of them, a command prompt window pops up for about a half a second and then closes. I have tried running the exe from the command prompt to see if there was an error message but there is no output and it acts the same. I researched the problem and found out that the exact same thing happens to other computers. I tried some of the solutions that were posted there:</p>
  
  <h3>Solutions that didn't seem to work</h3>
  
  <ul>
  <li>Adding the JDK location to the beginning of the <code>PATH</code> environment variable</li>
  <li>Adding the Android SDK location to the <code>PATH</code> environment variable</li>
  <li>Running the applications as an administrator</li>
  <li>Deleting the <code>.android</code> folder from the user (<code>C:/Users/[User Name]</code>) directory</li>
  <li>Installing in the root of the <code>C:</code> drive, instead of in Program Files</li>
  </ul>
  
  <hr>
  
  <p>OS Info: Windows 7 Home Premium, Admin Privileges</p>
  
  <hr>
  
  <h3>Update</h3>
  
  <p>I think I found the source of the problem, but I still don't know how to fix it. The problem seems to be with my <code>android.bat</code> file in the <code>C:\Android\android-sdk\tools</code> directory. It tries to call <code>find_java.bat</code> but is unable to because of a small syntax problem. This is the output:</p>
  
  <hr>
  
  <p>'C:\Android\ANDROI~1\tools\lib\find_java.exe -s' is not recognized as an internal or external command, operable program or batch file.</p>
  
  <p>ERROR: No suitable Java found. In order to properly use the Android Developer
  Tools, you need a suitable version of Java JDK installed on your system.
  We recommend that you install the JDK version of JavaSE, available here:
    <a href="http://www.oracle.com/technetwork/java/javase/downloads" rel="noreferrer">http://www.oracle.com/technetwork/java/javase/downloads</a></p>
  
  <p>You can find the complete Android SDK requirements here:
    <a href="http://developer.android.com/sdk/requirements.html" rel="noreferrer">http://developer.android.com/sdk/requirements.html</a></p>
  
  <hr>
  
  <p>After some modifications to <code>android.bat</code>, I was able to get it to call <code>find_java.bat</code>, which in turn got a bunch of errors no matter what I did to it. I finally got frustrated and decided to hard-code in the location of <code>java.exe</code>. Later on in the batch file there was still another error. I am starting to think that something is really wrong with my installation or the batch file. This is the batch file (<code>android.bat</code>):</p>
  
  <pre><code>@echo off
  rem Copyright (C) 2007 The Android Open Source Project
  rem
  rem Licensed under the Apache License, Version 2.0 (the "License");
  rem you may not use this file except in compliance with the License.
  rem You may obtain a copy of the License at
  rem
  rem      http://www.apache.org/licenses/LICENSE-2.0
  rem
  rem Unless required by applicable law or agreed to in writing, software
  rem distributed under the License is distributed on an "AS IS" BASIS,
  rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  rem See the License for the specific language governing permissions and
  rem limitations under the License.
  
  rem Useful links:
  rem Command-line reference:
  rem   http://technet.microsoft.com/en-us/library/bb490890.aspx
  
  rem don't modify the caller's environment
  setlocal
  
  rem Set up prog to be the path of this script, including following symlinks,
  rem and set up progdir to be the fully-qualified pathname of its directory.
  set prog=%~f0
  
  rem Grab current directory before we change it
  set work_dir="%cd%"
  
  rem Change current directory and drive to where the script is, to avoid
  rem issues with directories containing whitespaces.
  cd /d %~dp0
  
  
  rem Check we have a valid Java.exe in the path.
  set java_exe=
  call lib\find_java.bat
  if not defined java_exe goto :EOF
  
  set jar_path=lib\sdkmanager.jar;lib\swtmenubar.jar
  
  rem Set SWT.Jar path based on current architecture (x86 or x86_64)
  for /f %%a in ('%java_exe% -jar lib\archquery.jar') do set swt_path=lib\%%a
  
  :MkTempCopy
      rem Copy android.bat and its required libs to a temp dir.
      rem This avoids locking the tool dir in case the user is trying to update it.
  
      set tmp_dir=%TEMP%\temp-android-tool
      xcopy %swt_path% %tmp_dir%\%swt_path% /I /E /C /G /R /Y /Q &gt; nul
      copy /B /D /Y lib\androidprefs.jar   %tmp_dir%\lib\        &gt; nul
      copy /B /D /Y lib\org.eclipse.*      %tmp_dir%\lib\        &gt; nul
      copy /B /D /Y lib\sdk*               %tmp_dir%\lib\        &gt; nul
      copy /B /D /Y lib\common.jar         %tmp_dir%\lib\        &gt; nul
      copy /B /D /Y lib\commons-compress*  %tmp_dir%\lib\        &gt; nul
      copy /B /D /Y lib\swtmenubar.jar     %tmp_dir%\lib\        &gt; nul
      copy /B /D /Y lib\commons-logging*   %tmp_dir%\lib\        &gt; nul
      copy /B /D /Y lib\commons-codec*     %tmp_dir%\lib\        &gt; nul
      copy /B /D /Y lib\httpclient*        %tmp_dir%\lib\        &gt; nul
      copy /B /D /Y lib\httpcore*          %tmp_dir%\lib\        &gt; nul
      copy /B /D /Y lib\httpmime*          %tmp_dir%\lib\        &gt; nul
  
      rem jar_path and swt_path are relative to PWD so we don't need to adjust them, just change dirs.
      set tools_dir=%cd%
      cd /d %tmp_dir%
  
  :EndTempCopy
  
  rem The global ANDROID_SWT always override the SWT.Jar path
  if defined ANDROID_SWT set swt_path=%ANDROID_SWT%
  
  if exist %swt_path% goto SetPath
      echo ERROR: SWT folder '%swt_path%' does not exist.
      echo Please set ANDROID_SWT to point to the folder containing swt.jar for your platform.
      goto :EOF
  
  :SetPath
  rem Finally exec the java program and end here.
  REM set REMOTE_DEBUG=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
  call %java_exe% %REMOTE_DEBUG% -Dcom.android.sdkmanager.toolsdir="%tools_dir%" -Dcom.android.sdkmanager.workdir=%work_dir% -classpath "%jar_path%;%swt_path%\swt.jar" com.android.sdkmanager.Main %*
  
  rem EOF
  </code></pre>
  
  <hr>
  
  <h3>Update (again)</h3>
  
  <p>I installed the Android SDK on WinXP running in virtualbox and it works perfectly. I would still rather be able to use it on Win7 though.</p>