2009년 12월 10일 android blog에 새로운 글이 포스팅 되었다.
Optimize your layouts
[U]
Android application 은 xml 파일을 작성하여 UI layout을 생성할 수 있다.
이 UI layout을 위한 xml파일이 효율적으로 작성이 되어 있는지를 검사해주는 툴이 layoutopt 이다.
사용 법은 간단하다.
usage: layoutopt <directories/files to analyze>
하지만 Window 환경에서 layoutopt를 수정없이 사용하게 되면 아래와 같은 에러를 보게 될 것이다.
Exception in thread "main" java.lang.NoClassDefFoundError: lib\layoutopt/jar
Caused by: java.lang.ClassNotFoundException: lib\layoutopt.jar
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Could not find the main class: lib\layoutopt.jar. Program will exit.
포스팅된 글을 끝까지 잘 읽어보면 해결책이 나와있다.
Windows users: to start layoutopt, open the file called
layoutopt.bat
in the tools directory of the SDK and on the last line, replace %jarpath%
with -jar %jarpath
쉽게 이해가 안되면 아래와 같이 따라하자.
1. \sdk\android-sdk-windows\tools\layoutopt.bat 파일을 편집기로 연다.
2. 파일의 제일 마지막을 다음과 같이 수정한다.
수정 전 call java %java_debug% -Djava.ext.dirs=%javaextdirs% %jarpath% %*
수정 후 call java %java_debug% -Djava.ext.dirs=%javaextdirs% -jar %jarpath% %*
수정 후 call java %java_debug% -Djava.ext.dirs=%javaextdirs% -jar %jarpath% %*
3. 파일을 저장 후 layoutopt를 사용한다.
파일명을 직접 입력 하거나, xml 파일이 있는 폴더명을 입력해주면 해당 폴더 내의 모든 xml 파일을 분석한다.
분석 내용이 길어질 경우를 대비에 > 를 사용해 출력을 analyze.txt에 담아도 좋다.
> layoutopt main.xml > analyze.txt
> layoutopt ./res/layout/
> layoutopt ./res/layout/
만약 분석을 요청한 파일에 특별한 내용이 없을 경우에는
입력한 parameter만 출력이 되고 동작을 멈춘다.
'Android > Tools' 카테고리의 다른 글
[Android] Repo, fatal: unable to connect a socket (Connection refused) (0) | 2011.12.15 |
---|---|
[Android] CTS 테스트 #1 (3) | 2011.12.13 |
Ubuntu 9.10, Eclipse에서 ADT install 시 button 동작 하지 않는 문제 (1) | 2009.11.21 |
Android SDK 2.0 설치 에러 해결 (SDK Setup.exe) (2) | 2009.10.28 |
android tools 실행시 java error 발생 문제. (0) | 2009.10.16 |