Thanks, David, for reporting this.

There are three and a half problems here:

1) This should not happen. There need to be at least smoke tests for this.
   The current tests in [1] are executed for each new patch in Gerrit,
   but they cover next to nothing.

2) I can confirm that starting Saros/I as of 0c88717 (current master)
   does not work, whereas commit e0f66e1 (Gerrit #3002) does.
   However, on startup, there is just this message:

   > Cannot load project:
   > com.intellij.ide.plugins.PluginManager$StartupAbortedException:
   > com.intellij.diagnostic.PluginException:  [Plugin: 
de.fu_berlin.inf.dpp.intellij]

   I could not find any log file containing a stacktrace or *any* additional
   information.

   Holger, do you know of similar cases? How do you trick IntelliJ into getting
   a bit more verbose?

3) To deal with issue 1), I wanted to start writing a simple smoke test.
   I'm using IntelliJ 14 (not 15, because of [2]), and before adding a new
   test case, I wanted to successfully execute the existing ones, which was
   not possible.
   Both "IntelliJFileImplTest" and "PropertiesComponentAdapterTest" failed
   to initialize with the stacktrace below.
   It seem like the class "net.sf.cglib.core.AbstractClassGenerator" exists
   twice:
   (1) In our own "cglib-nodep-2.2.2.jar" [3].
   (2) In IntelliJ's "util.jar" which we cannot exclude from the SDK (as with
       some other libraries [4]), because then Saros/I won't even compile.

   Holger, are you able to execute the test cases in your setup?

4) Finally, out of curiosity I wanted to execute the test cases the way our CI
   server does: Letting ANT execute the build.xml.
   Problem here: Both from within Eclipse and IntelliJ, this fails due to the
   following error:
 
   > BUILD FAILED
   > G:\Development\saros\de.fu_berlin.inf.dpp.intellij\build.xml:156: taskdef
   > A class needed by class com.intellij.ant.Javac2 cannot be found:
   > org/jetbrains/org/objectweb/asm/ClassVisitor using the classloader
   > AntClassLoader[G:\Software\JetBrains\IntelliJ IDEA Community Edition 
14.1.5\lib\javac2.jar;
   > G:\Software\JetBrains\IntelliJ IDEA Community Edition 14.1.5\lib\jdom.jar;
   > G:\Software\JetBrains\IntelliJ IDEA Community Edition 
14.1.5\lib\asm4-all.jar;
   > G:\Software\JetBrains\IntelliJ IDEA Community Edition 
14.1.5\lib\jgoodies-forms.jar]

   This also could be IntelliJ 14 vs. 13 error -- but I was too lazy to find and
   install an IntelliJ 13 version.

   Holger, are you able to execute the build.xml locally?

This current development process of Saros/I is not obviously suited to produce
acceptable quality. This really needs to change!

Franz

[1] 
https://github.com/saros-project/saros/tree/master/de.fu_berlin.inf.dpp.intellij/test/junit/de/fu_berlin/inf/dpp
[2] http://sourceforge.net/p/dpp/bugs/862/ 
[3] 
https://github.com/saros-project/saros/blob/master/de.fu_berlin.inf.dpp.core/test/lib/cglib-nodep-2.2.2.jar
 
[4] http://www.saros-project.org/setup-intellij-environment#create-sdk

----
Stacktrace from test case execution

java.lang.NoSuchMethodError: 
net.sf.cglib.core.ClassNameReader.getClassName(Lorg/objectweb/asm/ClassReader;)Ljava/lang/String;
        at 
net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:220)
        at net.sf.cglib.core.KeyFactory$Generator.create(KeyFactory.java:144)
        at net.sf.cglib.core.KeyFactory.create(KeyFactory.java:116)
        at net.sf.cglib.core.KeyFactory.create(KeyFactory.java:108)
        at net.sf.cglib.core.KeyFactory.create(KeyFactory.java:104)
        at net.sf.cglib.proxy.Enhancer.<clinit>(Enhancer.java:69)
        at 
org.powermock.api.extension.proxyframework.ProxyFrameworkImpl.isProxy(ProxyFrameworkImpl.java:29)
        at 
org.powermock.reflect.internal.WhiteboxImpl.getUnmockedType(WhiteboxImpl.java:1783)
        at 
org.powermock.reflect.internal.WhiteboxImpl.getType(WhiteboxImpl.java:2237)
        at 
org.powermock.reflect.internal.WhiteboxImpl.setInternalState(WhiteboxImpl.java:327)
        at 
org.powermock.reflect.proxyframework.RegisterProxyFramework.registerProxyFramework(RegisterProxyFramework.java:18)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at 
org.powermock.reflect.internal.WhiteboxImpl.performMethodInvocation(WhiteboxImpl.java:2014)
        at 
org.powermock.reflect.internal.WhiteboxImpl.doInvokeMethod(WhiteboxImpl.java:885)
        at 
org.powermock.reflect.internal.WhiteboxImpl.invokeMethod(WhiteboxImpl.java:859)
        at org.powermock.reflect.Whitebox.invokeMethod(Whitebox.java:466)
        at 
org.powermock.tests.utils.impl.AbstractTestSuiteChunkerImpl.registerProxyframework(AbstractTestSuiteChunkerImpl.java:154)
        at 
org.powermock.tests.utils.impl.AbstractTestSuiteChunkerImpl.getPowerMockTestListenersLoadedByASpecificClassLoader(AbstractTestSuiteChunkerImpl.java:107)
        at 
org.powermock.modules.junit4.common.internal.impl.JUnit4TestSuiteChunkerImpl.createDelegatorFromClassloader(JUnit4TestSuiteChunkerImpl.java:143)
        at 
org.powermock.modules.junit4.common.internal.impl.JUnit4TestSuiteChunkerImpl.createDelegatorFromClassloader(JUnit4TestSuiteChunkerImpl.java:39)
        at 
org.powermock.tests.utils.impl.AbstractTestSuiteChunkerImpl.createTestDelegators(AbstractTestSuiteChunkerImpl.java:217)
        at 
org.powermock.modules.junit4.common.internal.impl.JUnit4TestSuiteChunkerImpl.<init>(JUnit4TestSuiteChunkerImpl.java:59)
        at 
org.powermock.modules.junit4.common.internal.impl.AbstractCommonPowerMockRunner.<init>(AbstractCommonPowerMockRunner.java:32)
        at 
org.powermock.modules.junit4.PowerMockRunner.<init>(PowerMockRunner.java:33)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at 
org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:29)
        at 
org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:21)
        at 
org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
        at 
org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26)
        at 
org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
        at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:101)
        at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:87)
        at 
com.intellij.junit4.JUnit46ClassesRequestBuilder.collectWrappedRunners(JUnit46ClassesRequestBuilder.java:90)
        at 
com.intellij.junit4.JUnit46ClassesRequestBuilder.getClassesRequest(JUnit46ClassesRequestBuilder.java:51)
        at 
com.intellij.junit4.JUnit4TestRunnerUtil.buildRequest(JUnit4TestRunnerUtil.java:91)
        at 
com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:39)
        at 
com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:212)
        at 
com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:68)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140)
-----


-----Original Message-----
From: David Sungaila [mailto:david.sunga...@fu-berlin.de] 
Sent: Thursday, February 04, 2016 11:08 AM
To: dpp-devel@lists.sourceforge.net
Subject: [DPP-Devel] Saros for IntelliJ is broken

Hello everyone,

I just noticed that Saros/I is not working in the current master branch. Change 
3004 makes the load up fail when SarosContext.init is called.

Can anyone confirm this? 3004 is not working for me, but 3002 is. So I 
concluded change 3004 is the faulty one.

Best regards,
David S.
------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
DPP-Devel mailing list
DPP-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dpp-devel

Reply via email to