lizongbo at 618119.com 工作,生活,Android,前端,Linode,Ubuntu,nginx,java,apache,tomcat,Resin,mina,Hessian,XMPP,RPC

2011年01月1日

获取Android的Java源代码并在Eclipse中关联查看的最新方法

Filed under: Android,Java,前端开发 — 标签:, , , , , , , , — lizongbo @ 01:59

在Google搜索“Android Eclipse 源代码”得到的结果并不合适,因为Google的Eclipse Android开发插件已经更新到了ADT 8.0.1.相应的lib关联java源代码的方式也变了。
以下是获取Android的Java源代码并在Eclipse中关联的最新操作方法和步骤:
1.首先下载Android的SDK安装文件:http://dl.google.com/android/android-sdk_r08-windows.zip
然后解压到:E:\Java\android\android-sdk-windows,运行目录中的SDK Manager.exe,下载好Android不同版本的API包。

2.然后下载或在线安装Eclipse插件ADT,
安装包地址为:http://dl.google.com/android/ADT-8.0.1.zip
在线安装地址:https://dl-ssl.google.com/android/eclipse/
来源:ttp://developer.android.com/sdk/eclipse-adt.html

2.ADT插件安装好之后,下载我已经打包好的Android 2.3(gingerbread)的java源代码压缩包:
下载地址:http://lizongbo.googlecode.com/files/android_gingerbread_javasrc.zip
来源:http://code.google.com/p/lizongbo/downloads/list
下载后复制到E:\Java\android\javasrc。

3.Android的Java源代码压缩包下载好之后,在Eclipse中设置好SDK配置:
操作步骤为:主菜单->Window–>Preferences–>选择Android,SDK Location设置为:E:\Java\android\android-sdk-windows,然后点右下角的Apply来生效。

4.开始进行关联Android的源代码,在Eclipse中新建一个Android工程,选中工程,主菜单 –>Project–>Properties–>选择Android,Project Build Target选中Android 2.3。
然后再点左边的“Java Build Path”,切换到 Libraries 面板,展开 Android2.3 这个lib,点击android.jar的Source attachment,再点Edit.在对话框中点“External File”,选择E:/Java/android/javasrc/android_gingerbread_javasrc.zip,点OK进行确认。这样就把Android的java代码关联好了。

5.在同一个工程中,选中工程,主菜单–>Project–>Properties–>选择 Android,Project Build Target分别选择Android1.5,Android1.6,Android2.01,Android2.1- update1,Android2.2,按上面第四步的操作重复设置关联。
以后在任何Android工程里按住Ctrl用鼠标点击Java类名都可以浏览到对应的java源代码。
Android各个版本对应的源代码为:
Android1.5对应android_cupcake_javasrc.zip
Android1.6对应android_donut_javasrc.zip
Android2.01和Android2.1-update1对应的是android_eclair_javasrc.zip
Android2.2对应android_froyo_javasrc.zip
Android2.3对应android_gingerbread_javasrc.zip

6.在Eclipse配置好源代码关联之后之后的信息会存储在:
E:\lizongbo\workspacenew\.metadata\.plugins\org.eclipse.core.resources\.root\.indexes\properties.index
E:\lizongbo\workspacenew\.metadata\.plugins\org.eclipse.jdt.core\variablesAndContainers.dat

同时记录Android的java源代码压缩包制作方法如下:
1.先在远程的Ubuntu Linux服务器(是Linode VPS)上安装以下组件(JDK1.6已经安装好了):
sudo apt-get install git-core gnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev
信息来自Android官方:http://source.android.com/source/download.html
2.运行 sudo apt-get install lib32readline5-dev
3.安装Repo脚本:
我懒得配PATH了,于是直接安装到了/usr/local/bin。
root@lizongbo.com:~/bin# cd /usr/local/bin
root@lizongbo.com:/usr/local/bin# ls
geoip-lookup
root@lizongbo.com:/usr/local/bin# curl http://android.git.kernel.org/repo >/usr/local/bin/repo
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100 17412  100 17412    0     0  27517      0 –:–:– –:–:– –:–:– 31148
root@lizongbo.com:/usr/local/bin# chmod a+x /usr/local/bin/repo
注意在下载该脚本的时候,可能会遇到服务器出错,下载的内容不对,运行命令的时候会提示错误“syntax error near unexpected token `newline’”。
root@lizongbo.com:/usr/local/bin# repo init -u git://android.git.kernel.org/platform/manifest.git -b cupcake
/usr/local/bin/repo: line 1: syntax error near unexpected token `newline’
/usr/local/bin/repo: line 1: `<!DOCTYPE HTML PUBLIC “-//IETF//DTD HTML 2.0//EN”>’
root@lizongbo.com:/usr/local/bin# more repo
<!DOCTYPE HTML PUBLIC “-//IETF//DTD HTML 2.0//EN”>
<html><head>
<title>500 Internal Server Error</title>
</head><body>
<h1>Internal Server Error</h1>
<p>The server encountered an internal error or
misconfiguration and was unable to complete
your request.</p>
<p>Please contact the server administrator,
webmaster@kernel.org and inform them of the time the error occurred,
and anything you might have done that may have
caused the error.</p>
<p>More information about this error may be available
in the server error log.</p>
</body></html>
从内容看是服务器出错了,因此需要重新下载脚本.
4.建立mydroid目录,按代码分支下载对应版本的Android完整的源代码,比如下载Android2.3的代码:
root@lizongbo.com:~/mydroid# mkdir gingerbread
root@lizongbo.com:~/mydroid# cd gingerbread/
root@lizongbo.com:~/mydroid/gingerbread# repo init -u git://android.git.kernel.org/platform/manifest.git -b gingerbread
root@lizongbo.com:~/mydroid/gingerbread# repo sync
Android1.5的代码分支:
root@lizongbo.com:~/mydroid/cupcake# repo init -u git://android.git.kernel.org/platform/manifest.git -b cupcake
root@lizongbo.com:~/mydroid/cupcake# repo sync
Android1.6的代码分支:
root@lizongbo.com:~/mydroid/donut# repo init -u git://android.git.kernel.org/platform/manifest.git -b donut
root@lizongbo.com:~/mydroid/donut# repo sync
Android2.0.1和2.1的代码分支:
root@lizongbo.com:~/mydroid/eclair# repo init -u git://android.git.kernel.org/platform/manifest.git -b eclair
root@lizongbo.com:~/mydroid/eclair# repo sync
Android2.2的代码分支:
root@lizongbo.com:~/mydroid/froyo# repo init -u git://android.git.kernel.org/platform/manifest.git -b froyo
root@lizongbo.com:~/mydroid/froyo# repo sync

如果遇到代码下载速度太慢,可以指定hosts,hosts配置不住为:
root@lizongbo.com:~/mydroid/gingerbread/.repo/projects# nslookup
> android.git.kernel.org
Server:         72.14.188.5
Address:        72.14.188.5#53
Non-authoritative answer:
android.git.kernel.org  canonical name = android.git.geo.kernel.org.
android.git.geo.kernel.org      canonical name = android.git.us.kernel.org.
Name:   android.git.us.kernel.org
Address: 149.20.20.141
Name:   android.git.us.kernel.org
Address: 204.152.191.45
> exit

root@lizongbo.com:/etc# vi hosts
204.152.191.45 android.git.us.kernel.org
204.152.191.45 android.git.kernel.org

网上有文章介绍使用提取java文件并打包的pytho脚本可以生成源代码包,参考:
http://android.opensourceror.org/2010/01/18/android-source/
http://blog.michael-forster.de/2008/12/view-android-source-code-in-eclipse.html
Python下载地址:http://www.python.org/ftp/python/2.6.6/python-2.6.6.msi
但是在Android2.2和Android2.3的代码里,Android写一了一些mock的类,比如android.webkit.WebView,使用python脚本打包的话,会把mock的源代码打进去,而不是真正的源代码,
因此我根据python脚本写了个java程序来提取java文件过滤冗余的java代码并打包。
生成的java源代码压缩:android_cupcake_javasrc.zip,android_donut_javasrc.zip,android_eclair_javasrc.zip,android_froyo_javasrc.zip,android_gingerbread_javasrc.zip
目前在code.google.com上传了android_gingerbread_javasrc.zip,欢迎下载。

以下是各版本的Android java source 下载地址:

Android2.3: http://lizongbo.googlecode.com/files/android_gingerbread_javasrc.zip

Android1.5: http://lizongbo.googlecode.com/files/android_cupcake_javasrc.zip
Android1.6: http://lizongbo.googlecode.com/files/android_donut_javasrc.zip
Android2.1: http://lizongbo.googlecode.com/files/android_eclair_javasrc.zip
Android2.2: http://lizongbo.googlecode.com/files/android_froyo_javasrc.zip

新年快乐!

2010年03月4日

Eclipse 3.5.2及插件安装

Filed under: Java,JAVA IDE — 标签:, , , , — lizongbo @ 22:28
Eclipse 3.5.2及插件安装
1.首先下载Eclipse 3.5.2.

http://d2u376ub0heus3.cloudfront.net/technology/epp/downloads/release/galileo/SR2/eclipse-jee-galileo-SR2-win32.zip
来源:http://download.eclipse.org/eclipse/downloads/

2.下载相关插件:
a.Subclipse 1.6.8
来源:http://subclipse.tigris.org/
下载地址:http://subclipse.tigris.org/files/documents/906/47393/site-1.6.8.zip
b.Findbugs 1.3.9
来源:http://findbugs.sourceforge.net/
下载地址:http://nchc.dl.sourceforge.net/project/findbugs/findbugs%20eclipse%20plugin/1.3.9/edu.umd.cs.findbugs.plugin.eclipse_1.3.9.20090821.zip
c.Bytecode Outline plugin for Eclipse 2.2.10
来源: http://asm.ow2.org/eclipse/index.html
下载地址:
http://download.forge.objectweb.org/asm/asm-3.2.jar(Bytecode Outline依赖的jar)
http://download.forge.objectweb.org/asm/de.loskutov.BytecodeOutline_2.2.10.jar

3.把插件集中放到一个地方:
解压site-1.6.8.zip到D:\Java\ecplugin\subclipse
解压edu.umd.cs.findbugs.plugin.eclipse_1.3.9.20090821.zip到:D:\Java\ecplugin\findbugs\eclipse\plugins
确保D:\Java\ecplugin\findbugs\eclipse下面有features和plugins目录
复制asm-3.2.jar和de.loskutov.BytecodeOutline_2.2.10.jar到D:\Java\ecplugin\bytecode\eclipse\plugins
确保D:\Java\ecplugin\bytecode\eclipse下面有features和plugins目录

4.安装插件

新建目录 D:\Java\ec352\eclipse\links

在D:\Java\ec352\eclipse\links下面,新建subeclipse.link,内容为:path=D:\\Java\\ecplugin\\subeclipse
在D:\Java\ec352\eclipse\links下面,新建findbugs.link,内容为:path=D:\\Java\\ecplugin\\findbugs
在D:\Java\ec352\eclipse\links下面,新建bytecode.link,内容为:path=D:\\Java\\ecplugin\\bytecode
上面这样操作太麻烦,可以用下面的bat双击一次搞定
set ECPLUGIN_LINK=D:\Java\ec352\eclipse\links
mkdir %ECPLUGIN_LINK%
echo path=D:\\Java\\ecplugin\\subeclipse > %ECPLUGIN_LINK%\subeclipse.link
echo path=D:\\Java\\ecplugin\\findbugs > %ECPLUGIN_LINK%\findbugs.link
echo path=D:\\Java\\ecplugin\\bytecode > %ECPLUGIN_LINK%\bytecode.link

5.配置maven
maven已经装好
运行
mvn eclipse:configure-workspace -Declipse.workspace=D:\javadev\workspace

2009年03月25日

Ubuntu 8.10上我的常用软件安装与配置

Filed under: JAVA IDE,Linux — 标签:, , , , , — lizongbo @ 23:51

参考: http://618119.com/archives/2009/03/21/141.html
在神舟笔记本优雅HP540(d3)上安装好Ubuntu8.10 64位版本之后,除了安装QQ,Flash,w64codecs,smplayer,VirtualBox之外,还需要更新系统,并安装其它软件。
1.更新:sudo apt-get update
2.安装sun的jdk1.6 sudo apt-get install sun-java6-jdk
3.安装ffmpeg解码,sudo apt-get install ffmpeg
4.安装类似ACDsee的看图软件,sudo apt-get install gimageview
5.安装ftp客户端工具:sudo apt-get install filezilla
Filezilla 连接 Serv-U服务器, 需要设置 字符集为GBK,文件-》站点管理器-》我的站点,选择服务器连接,然后切换到字符集面板,使用自定义的字符集,编码填 GBK。
6.安装时间同步服务 sudo apt-get install ntp
7.picasa for linux:

下载地址:http://dl.google.com/linux/deb/pool/non-free/p/picasa/picasa_3.0-current_amd64.deb

来源:http://picasa.google.com/linux/download.html#picasa30
双击picasa_3.0-current_amd64.deb,安装picasa for linux.
8.双击virtualbox-2.1_2.1.4-42893_Ubuntu_intrepid_amd64.deb安装virtualbox。
如果是先安装virtualbox然后再运行 apt-get update升级了linux 内核的,在启动虚拟操作系统会出错,这时需要再运行安装文件重新安装一下就好了。
9.解压EIOffice_Personal_Lin.tar.gz,运行EIOffice_Personal_Lin/setup.sh,然后选择安装目录安装永中office个人版。
10.运行netbeans-6.5-ml-java-linux.sh安装netbeans 6.5。
11.解压eclipse-jee-ganymede-SR2-linux-gtk-x86_64.tag.zg到/usr/local/eclipse,运行 /usr/local/eclipse/eclipse 即可启动Eclipse .
11.vuze(azureus):

下载地址http://cache2.vuze.com/files/Vuze_Installer.tar.bz2

来源:http://azureus.sourceforge.net/
解压到 /usr/local/vuze/,运行 ./vuze
出错信息:
DEBUG::Thu Mar 19 22:18:24 CST 2009::org.gudy.azureus2.ui.swt.mainwindow.SWTThread::createInstance::69:
Loading SWT Libraries failed. Typical causes:
(1) swt.jar is not for your os architecture (amd64). You can get a new swt.jar (Min Version: 3.4) from http://eclipse.org/swt
(2) No write access to ‘null’. SWT will extract libraries contained in the swt.jar to this dir.
Initializer::::110,Main::::84,Main::main::217,NativeMethodAccessorImpl::invoke0::-2,NativeMethodAccessorImpl::invoke::39,DelegatingMethodAccessorImpl::invoke::25,Method::invoke::597,MainExecutor$1::run::37,Thread::run::619
java.lang.UnsatisfiedLinkError: Cannot load 32-bit SWT libraries on 64-bit JVM
at org.eclipse.swt.internal.Library.loadLibrary(Library.java:177)
at org.eclipse.swt.internal.Library.loadLibrary(Library.java:151)
于是下载:http://download.actuatechina.com/eclipse/eclipse/downloads/drops/R-3.4-200806172000/swt-3.4-gtk-linux-x86_64.zip

或者 http://ftp.cs.pu.edu.tw/pub/eclipse/eclipse/downloads/drops/R-3.4-200806172000/swt-3.4-gtk-linux-x86_64.zip

解压提取swt.jar到 /usr/local/vuze/
12.ubuntu 设置资源管理器Nautilus显示地址栏,
应用程序 点右键,编辑菜单,系统工具,钩上 配置编辑器

然后,应用程序,系统工具,配置编辑器-apps-nautilus-preferences-always_use_location_entry此项勾选就是默认显示地址栏。

Older Posts »

Powered by WordPress