From: Raphael Moll Date: Wed, 15 Dec 2010 20:51:26 +0000 (-0800) Subject: Fix DDMS and HierarchyViewer .bat files on Windows X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=c0336756;p=android-x86%2Fsdk.git Fix DDMS and HierarchyViewer .bat files on Windows These were not setting the "bin dir" properpty correctly, and as a consequence the tools complain they can't find adb.exe. The fix is to set it to the directory of the script but to avoid spaces-in-path issues we use the "~fs" modifier to get a space-free short name for the %cd% value. And since we can't use use %cd% combined with ~fs, we use a for loop trick to set it. Note that ddms.bat was in unix end-of-line mode so I changed it back to DOS end-of-line mode. Change-Id: Ic9e55643b551898043add27c12193a0949f40bb0 --- diff --git a/ddms/app/etc/ddms.bat b/ddms/app/etc/ddms.bat index 86fe1d6a9..0b02cb3fd 100755 --- a/ddms/app/etc/ddms.bat +++ b/ddms/app/etc/ddms.bat @@ -1,69 +1,72 @@ -@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 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 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 jarfile=ddms.jar -set frameworkdir= - -if exist %frameworkdir%%jarfile% goto JarFileOk - set frameworkdir=lib\ - -if exist %frameworkdir%%jarfile% goto JarFileOk - set frameworkdir=..\framework\ - -:JarFileOk - -if debug NEQ "%1" goto NoDebug - set java_debug=-agentlib:jdwp=transport=dt_socket,server=y,address=8050,suspend=y - shift 1 -:NoDebug - -set jarpath=%frameworkdir%%jarfile% - -if not defined ANDROID_SWT goto QueryArch - set swt_path=%ANDROID_SWT% - goto SwtDone - -:QueryArch - - for /f %%a in ('%java_exe% -jar %frameworkdir%archquery.jar') do set swt_path=%frameworkdir%%%a - -:SwtDone - -if exist %swt_path% goto SetPath - echo SWT folder '%swt_path%' does not exist. - echo Please set ANDROID_SWT to point to the folder containing swt.jar for your platform. - exit /B - -:SetPath -set javaextdirs=%swt_path%;%frameworkdir% - -call %java_exe% %java_debug% -Dcom.android.ddms.bindir= -classpath "%jarpath%;%swt_path%\swt.jar" com.android.ddms.Main %* - +@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 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 Change current directory and drive to where the script is, to avoid +rem issues with directories containing whitespaces. +cd /d %~dp0 + +rem Get the CWD as a full path with short names only (without spaces) +for %%i in ("%cd%") do set prog_dir=%%~fsi + +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 jarfile=ddms.jar +set frameworkdir= + +if exist %frameworkdir%%jarfile% goto JarFileOk + set frameworkdir=lib\ + +if exist %frameworkdir%%jarfile% goto JarFileOk + set frameworkdir=..\framework\ + +:JarFileOk + +if debug NEQ "%1" goto NoDebug + set java_debug=-agentlib:jdwp=transport=dt_socket,server=y,address=8050,suspend=y + shift 1 +:NoDebug + +set jarpath=%frameworkdir%%jarfile% + +if not defined ANDROID_SWT goto QueryArch + set swt_path=%ANDROID_SWT% + goto SwtDone + +:QueryArch + + for /f %%a in ('%java_exe% -jar %frameworkdir%archquery.jar') do set swt_path=%frameworkdir%%%a + +:SwtDone + +if exist %swt_path% goto SetPath + echo SWT folder '%swt_path%' does not exist. + echo Please set ANDROID_SWT to point to the folder containing swt.jar for your platform. + exit /B + +:SetPath +set javaextdirs=%swt_path%;%frameworkdir% + +call %java_exe% %java_debug% -Dcom.android.ddms.bindir=%prog_dir% -classpath "%jarpath%;%swt_path%\swt.jar" com.android.ddms.Main %* + diff --git a/hierarchyviewer2/app/etc/hierarchyviewer.bat b/hierarchyviewer2/app/etc/hierarchyviewer.bat index 9edf96abd..0876d2fdc 100755 --- a/hierarchyviewer2/app/etc/hierarchyviewer.bat +++ b/hierarchyviewer2/app/etc/hierarchyviewer.bat @@ -24,6 +24,9 @@ rem Change current directory and drive to where the script is, to avoid rem issues with directories containing whitespaces. cd /d %~dp0 +rem Get the CWD as a full path with short names only (without spaces) +for %%i in ("%cd%") do set prog_dir=%%~fsi + rem Check we have a valid Java.exe in the path. set java_exe= call lib\find_java.bat @@ -65,6 +68,6 @@ if exist %swt_path% goto SetPath :SetPath -call %java_exe% %java_debug% -Xmx512m -Dcom.android.hierarchyviewer.bindir= -classpath "%jarpath%;%swt_path%\swt.jar" com.android.hierarchyviewer.HierarchyViewerApplication %* +call %java_exe% %java_debug% -Xmx512m -Dcom.android.hierarchyviewer.bindir=%prog_dir% -classpath "%jarpath%;%swt_path%\swt.jar" com.android.hierarchyviewer.HierarchyViewerApplication %*