今天在eclipse中运行程序时,提示:
ADB server didn't ACK
* failed to start daemon *
baidu、google后,看很多难兄难弟说这个是豌豆夹搞的怪,打开任务管理器,找了半天也没发现,正常,因为豌豆夹上周被我卸了……
?
突然看到下面这位XD的解决思路可借鉴,特转载如下:
-----------------------------------------------
【杂症】一个豌豆荚引发的血案——关于ADB server didn't? ACK
?
前言:
终于,还是回到了博客园,继续我的技术博客之旅,其实这段时间经历很多事情,换了份工作,开始了WP7和Android的开发工作,对于一个从Windows Mobile跳过来的开发者,还真的经历了不少曲折,今天在这里就记录一下,这个恼人的:ADB server didn't ACK~~~~~(大家可以在谷歌里搜搜……)
?
问题重现:
今天下午,写了不少代码后,点击那个Run按钮后,Eclipse给我报错:
[2012-06-19 15:22:19 - adb] ADB server didn't ACK
[2012-06-19 15:22:19 - adb] * failed to start daemon *
可是,可是昨天都还好好的啊,于是谷歌吧,关键词:ADB server didn't ACK,一大堆结果哦,无非如下几种:
- 重启Eclipse
- 重启电脑
- 加入环境变量
- ……
都一一试过来,还是不行,急煞我也!!!
?
柳暗花明:
在看帖子的过程中,众位苦逼的同行中,有一位提过:
5037端口被占用的话,也会出现如下提示……
于是乎,真像是找到了救命稻草一般,先在命令行中输入如下指令,查看5037这个端口现在是被谁占用了:
netstat -a -o 5037
然后得到如下的一个结果,还真被占用了哦:
?
那这个4792在我机器上,到底是个什么进程呢,好的,接着输入以下命令,把真凶找出来:
tasklist /fi "pid eq 4792"
然后,额……我郁闷了……居然是大名鼎鼎的豌豆荚:
?
结尾:
好了,到这里,我结束了这个进程,然后重启了Eclipse,接着,点击Run,程序就像以前一样,自动打开模拟器并加载了。此问题虽然不是很严重,但是从网络上每位遇到此问题的同学来看,大部分人还没遇到过我这个问题,所以记录在这里,希望能够帮助到大家。
?
原文地址:
http://www.strongcms.net/mobile/android/2012/0619/7273.html
-----------------------------------------------------------
?
我的调查结果:
根据上述思路,查看确实有程序占用端口5037,pid为4276,实际占用程序如下:
?
查看任务管理器,发下有一个oaadb.exe、多个oa_adb.exe进程,强行结束oaadb.exe后,过一会儿会自己启动,如果强行结束oa_adb.exe,会起很多个oa_adb.exe,特流氓。
?
解决办法:
没办法,我也采取了不太厚道的解决办法,查到该执行文件的位置,然后把oaadb.exe,再重启eclipse,adb顺利启动,运行OK,解决。
oaadb.exe的路径如下:
C:\Documents and Settings\Administrator\Local Settings\Temp\INPEnhUpdate
?
至于删了这个文件有啥影响,目前还没发现……
?
另外, 网上有人说,这个文件是迅雷的,这个我不太确定,话说迅雷也来搀和移动这块儿了?甭管是谁家的,这个设计太恶心了,跟病毒有啥子区别?!鄙视
?
?