Using the Eclipse project HierarchyViewer ----------------------------------------- HierarchyViewer requires some external libraries to compile. If you build HierarchyViewer using the makefile, you have nothing to configure. However if you want to develop on HierarchyViewer using Eclipse, you need to perform the following configuration. ------- 1- Projects required in Eclipse ------- To run HierarchyViewer from Eclipse, you need to import the following 5 projects: - sdk/hierarchyviewer2/app - sdk/hierarchyviewer2/libs/hierarchyviewerlib/ - sdk/ddms/libs/ddmlib - sdk/ddms/libs/ddmuilib - sdk/sdkmanager/libs/sdklib ------- 2- HierarchyViewer requires some SWT JARs to compile. ------- SWT is available in the tree under prebuild/<platform>/swt Because the build path cannot contain relative path that are not inside the project directory, the .classpath file references a user library called ANDROID_SWT. In order to compile the project: - Open Preferences > Java > Build Path > User Libraries - Create a new user library named ANDROID_SWT - Add the following 4 JAR files: - prebuilt/<platform>/swt/swt.jar - prebuilt/common/eclipse/org.eclipse.core.commands_3.*.jar - prebuilt/common/eclipse/org.eclipse.equinox.common_3.*.jar - prebuilt/common/eclipse/org.eclipse.jface_3.*.jar ------- 3- HierarchyViewer also requires the compiled SwtMenuBar library. ------- Build the swtmenubar library: $ cd $TOP (top of Android tree) $ . build/envsetup.sh && lunch sdk-eng $ sdk/eclipse/scripts/create_sdkman_symlinks.sh Define a classpath variable in Eclipse: - Open Preferences > Java > Build Path > Classpath Variables - Create a new classpath variable named ANDROID_OUT_FRAMEWORK - Set its folder value to <Android tree>/out/host/<platform>/framework - Create a new classpath variable named ANDROID_SRC - Set its folder value to <Android tree> You might need to clean the ddms project (Project > Clean...) after you add the new classpath variable, otherwise previous errors might not go away automatically. The ANDROID_SRC part should be optional. It allows you to have access to the SwtMenuBar generic parts from the Java editor. -- EOF