Eclipse在Windows 7 for Android Development上没有响应

时间:2010-07-20 04:11:19

标签: windows eclipse android

我在使用Android插件的Eclipse上运行Windows 7 64K时遇到了很多问题。我越来越没有回应日食。它似乎随机发生。我知道Windows 7目前不支持Android SDK。

然而有人有这个工作吗?

我使用以下内容: - Windows 7 64K - 日食伽利略(3.5.2) - JDK 1.6.0_21 64k

7 个答案:

答案 0 :(得分:5)

这里可能存在几个相同的“无响应”症状。因此,以下内容可能对每个人都不起作用。

我正在使用Eclipse Helios Service Release 1运行Windows 7 Enterprise x64,并且非常频繁地看到Eclipse“没有响应”(每天左右)。到目前为止,我通常可以通过停止adb来修复它。

  • 转到Windows任务管理器(CTRL-ALT-DEL然后启动任务管理器)
  • 在“进程”选项卡中,对“图像名称”列进行排序
  • 选择adb.exe * 32
  • 结束流程
  • 在检查对话框中结束处理。

您可能会看到有关“DeviceMonitor连接尝试”的控制台警告,但现在应该取消阻止Eclipse,并在一段时间后重新启动adb。

答案 1 :(得分:1)

问题是解决的。这是由于JDK 1.6.0_21 build 6中的一个错误。构建7中的问题已得到修复。以下是相关链接....

http://www.eclipse.org/forums/index.php?t=msg&th=171988&start=0&

感谢大家的帮助。

答案 2 :(得分:1)

我已经看到了很多,所以使用jvisualvm,我触发了一个线程转储,我发现了一个死锁。这不会通过杀死adb来治愈。我已经报告了(并引用了这个问题):http://code.google.com/p/android/issues/detail?id=25149




Found one Java-level deadlock:
=============================
"Device Client Monitor":
  waiting to lock monitor 0x0000000010516468 (object 0x00000000e14ca208, a java.util.ArrayList),
  which is held by "Device List Monitor"
"Device List Monitor":
  waiting to lock monitor 0x0000000010516510 (object 0x00000000e9354218, a com.android.ddmuilib.logcat.LogCatReceiverFactory),
  which is held by "main"
"main":
  waiting to lock monitor 0x0000000010e01a98 (object 0x00000000e0dbd3f8, a java.util.ArrayList),
  which is held by "Device List Monitor"

Java stack information for the threads listed above:
===================================================
"Device Client Monitor":
    at com.android.ddmlib.DeviceMonitor.deviceClientMonitorLoop(DeviceMonitor.java:657)
    - waiting to lock  (a java.util.ArrayList)
    at com.android.ddmlib.DeviceMonitor.access$100(DeviceMonitor.java:42)
    at com.android.ddmlib.DeviceMonitor$3.run(DeviceMonitor.java:577)
"Device List Monitor":
    at com.android.ddmuilib.logcat.LogCatReceiverFactory.removeReceiverFor(LogCatReceiverFactory.java:53)
    - waiting to lock  (a com.android.ddmuilib.logcat.LogCatReceiverFactory)
    at com.android.ddmuilib.logcat.LogCatReceiverFactory.access$000(LogCatReceiverFactory.java:31)
    at com.android.ddmuilib.logcat.LogCatReceiverFactory$1.deviceDisconnected(LogCatReceiverFactory.java:41)
    at com.android.ddmlib.AndroidDebugBridge.deviceDisconnected(AndroidDebugBridge.java:797)
    at com.android.ddmlib.DeviceMonitor.updateDevices(DeviceMonitor.java:391)
    - locked  (a java.util.ArrayList)
    - locked  (a java.util.ArrayList)
    at com.android.ddmlib.DeviceMonitor.processIncomingDeviceData(DeviceMonitor.java:323)
    at com.android.ddmlib.DeviceMonitor.deviceMonitorLoop(DeviceMonitor.java:191)
    at com.android.ddmlib.DeviceMonitor.access$000(DeviceMonitor.java:42)
    at com.android.ddmlib.DeviceMonitor$1.run(DeviceMonitor.java:82)
"main":
    at com.android.ddmlib.AndroidDebugBridge.addClientChangeListener(AndroidDebugBridge.java:437)
    - waiting to lock  (a java.util.ArrayList)
    at com.android.ddmuilib.logcat.LogCatPidToNameMapper.(LogCatPidToNameMapper.java:46)
    at com.android.ddmuilib.logcat.LogCatReceiver.(LogCatReceiver.java:59)
    at com.android.ddmuilib.logcat.LogCatReceiverFactory.newReceiver(LogCatReceiverFactory.java:62)
    - locked  (a com.android.ddmuilib.logcat.LogCatReceiverFactory)
    at com.android.ddmuilib.logcat.LogCatPanel.deviceSelected(LogCatPanel.java:243)
    at com.android.ddmuilib.SelectionDependentPanel.deviceSelected(SelectionDependentPanel.java:52)
    at com.android.ide.eclipse.ddms.views.SelectionDependentViewPart.selectionChanged(SelectionDependentViewPart.java:67)
    at com.android.ide.eclipse.ddms.DdmsPlugin$6.run(DdmsPlugin.java:705)
    at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
    at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
    - locked  (a org.eclipse.swt.widgets.RunnableLock)
    at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4140)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3757)
    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696)
    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
    at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
    at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1410)

Found 1 deadlock.



答案 3 :(得分:0)

我使用的是Windows 7 x64,并且已经将它用于Android开发。没问题。您确定它是Android SDK,还是手机的Android驱动程序?获取所有最新更新,并将所有文件和工作区放在users文件夹之外。这可以防止任何发布权限的机会。

答案 4 :(得分:0)

Eclipse可能会大量进入垃圾收集器。您可以通过单击“首选项”中的Show heap status来检查这是否是原因一般。

您可以尝试将-Xmx1024m放在eclipse.ini文件的末尾。如果已有-Xmx设置,则将其替换为该设置。这将有助于防止GC频繁地暂停UI。

答案 5 :(得分:0)

答案 6 :(得分:0)

我在Windows 7上使用Eclipse helios 64bits,似乎问题出现在最后一个JDK上: java版“1.6.0_21” Java(TM)SE运行时环境(版本1.6.0_21-b06) Java HotSpot(TM)64位服务器VM(版本17.0-b16,混合模式)

我使用的解决方法是使用以前版本的JRE: C:\ eclipse-jee-helios-win32-x86_64 \ eclipse.exe -XX:MaxPermSize = 256m -vm“C:\ Program Files \ Java \ jdk1.6.0_20 \ bin \ java.exe”