在打开junit测试用例时Eclipse被挂起了

时间:2012-12-27 19:55:04

标签: java eclipse junit eclipse-plugin

今天,在使用eclipse时。每当我打开junit测试用例文件时,我的eclipse都会进入挂起状态。对此进行了分析。

打开文件之前

  ~$ ps -o thcount 5458
  THCNT
   42

打开文件后。

$ ps -o thcount 5458
THCNT
  195

我发现线程使用率突然飙升。

我使用jstack -l进行了线程转储以进行调试。我发现大多数线程都处于BLOCKED状态。

线程转储:

在此处发布线程转储使我的问题变得难以理解。这是threaddump https://docs.google.com/document/d/11nPbEkQMg-FMB9lPwvDK-ShNTygDN2biDUSPHMicdm4/edit?pli=1

谢谢你, 坎南。

1 个答案:

答案 0 :(得分:0)

看起来这是你的问题

你有自定义类加载器吗?所有被阻止的线程都在尝试加载类。

com.instantiations.assist.eclipse.junit.execution.core.UserDefinedClassLoader)
    at com.instantiations.assist.eclipse.junit.execution.core.UserDefinedClassLoader.loadClass(UserDefinedClassLoader.java:62)
    - locked <0x00000007efc97ea0> (a com.instantiations.assist.eclipse.junit.execution.core.UserDefinedClassLoader)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
    at com.zmedia.accounts.AccountsProto$ZAID$ZUID$UserTicket$ServiceTicket.initFields(AccountsProto.java:51314)
    at com.zmedia.accounts.AccountsProto$ZAID$ZUID$UserTicket$ServiceTicket.<clinit>(AccountsProto.java:52130)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:186)
    at com.zmedia.resource.ResourceType.<init>(ResourceType.java:28)
    at com.zmedia.resource.ResourceType.loadResources(ResourceType.java:63)
    at com.zmedia.resource.URI.init(URI.java:859)
    at com.zmedia.resource.URI.<init>(URI.java:87)
    at com.zmedia.resource.URI.<init>(URI.java:81)
    at com.zmedia.accounts.Accounts$AccountURI.<init>(Accounts.java:13142)
    at com.zmedia.accounts.Accounts.getAccountURI(Accounts.java:13132)
    at com.zmedia.accounts.api.AccountTester.testGrandChildinSubresources(AccountTester.java:841)