adb server is out of date. killing...
1:今天调试android的时候发现一个诡异的问题
- C:\Users\xxxx>adb start-server
- adb server is out of date. killing...
- ADB server didn't ACK
- * failed to start daemon *
C:\Users\xxxx>adb start-server
adb server is out of date. killing...
ADB server didn't ACK
* failed to start daemon *
adb 不管执行 shell devices 还是logcat 都会报错
- adb server is out of date. killing...
adb server is out of date. killing...
究其源就是adb server没启动
到stackoverflow上查了一下 经过分析整理如下:
- C:\Users\xxxx>adb nodaemon server
- cannot bind 'tcp:5037'
C:\Users\xxxx>adb nodaemon server
cannot bind 'tcp:5037'
原来adb server 端口绑定失败
继续查看到底是哪个端口给占用了
- C:\Users\xxxxxx>netstat -ano | findstr "5037"
- TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 4236
- TCP 127.0.0.1:5037 127.0.0.1:49422 ESTABLISHED 4236
- TCP 127.0.0.1:49422 127.0.0.1:5037 ESTABLISHED 3840
C:\Users\xxxxxx>netstat -ano | findstr "5037"
TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 4236
TCP 127.0.0.1:5037 127.0.0.1:49422 ESTABLISHED 4236
TCP 127.0.0.1:49422 127.0.0.1:5037 ESTABLISHED 3840
打开任务管理器kill掉4236 这个进程。ok
另外还可能遇到问题,参考以下方法解决。
java.net.BindException: Address alreadyin use: JVM_Bind<null>:8080
原因:8080端口已经被占用。
解决:查看哪个程序占用了8080端口,并关闭该程序,然后重启Tomcat.
查看端口被哪个进程占用的方法
1、运行-cmd,然后输入netstat -ano,回车;
2、查看本地地址中包含xx.xx.xx.xx:8080的那一行的pid,为几个数字,把这几个数字记下来;
3、启动“任务管理器”——“进程”,在工具栏—查看—“选择列”前面的框打上勾;
4、然后查看与刚才那个pid对应的是哪个程序,很容易就会找到,就是它占用了8080端口。 结束掉,然后重新启用Myeclipse Tomcat服务器就好了