flutter / flutter-intellij

Flutter Plugin for IntelliJ
https://flutter.dev/using-ide
BSD 3-Clause "New" or "Revised" License
1.97k stars 316 forks source link

Integration tests throw NoClassDefFoundError (out of the box). #594

Closed pq closed 7 years ago

pq commented 7 years ago

Probably a simple fix but out of the box integration tests throw a NoClassDefFoundError.

/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/bin/java -ea -Dflutter.sdk=/Users/pquitslund/src/git/flutter "-Xbootclasspath/a:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/boot.jar" -Didea.load.plugins.id=io.flutter -Didea.home.path=/Users/pquitslund/Library/Caches/IdeaIC2016.2/plugins-sandbox/test -Didea.plugins.path=/Users/pquitslund/Library/Caches/IdeaIC2016.2/plugins-sandbox/plugins -Didea.launcher.port=7533 "-Didea.launcher.bin.path=/Applications/Tools/IntelliJ IDEA CE.app/Contents/bin" -Dfile.encoding=UTF-8 -classpath "/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/plugins/junit/lib/junit-rt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/deploy.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/ext/cldrdata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/ext/dnsns.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/ext/jaccess.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/ext/jfxrt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/ext/localedata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/ext/nashorn.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/ext/sunec.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/ext/sunjce_provider.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/ext/sunpkcs11.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/ext/zipfs.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/javaws.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/jfxswt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/management-agent.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/plugin.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/lib/ant-javafx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/lib/dt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/lib/javafx-mx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/lib/jconsole.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/lib/packager.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/lib/sa-jdi.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/lib/tools.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/annotations.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/asm-all.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/automaton.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/batik-all.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/boot.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/bootstrap.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/cli-parser-1.1.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/commons-codec-1.9.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/commons-httpclient-3.1-patched.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/commons-logging-1.2.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/commons-net-3.3.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/coverage-agent.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/coverage-instrumenter.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/coverage-util.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/extensions.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/external-system-rt.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/forms_rt.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/groovy-all-2.4.6.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/gson-2.5.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/hamcrest-core-1.3.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/icons.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/idea.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/imgscalr-lib-4.2.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/isorelax.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/javac2.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jaxen-1.1.3.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jayatana-1.2.4.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jcip-annotations.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jdkAnnotations.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jdom.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jgoodies-common-1.2.1.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jgoodies-forms.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jgoodies-looks-2.4.2.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jh.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jing.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jna-platform.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jna.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jps-builders.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jps-launcher.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jps-model.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jsch.agentproxy.connector-factory.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jsch.agentproxy.core.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jsch.agentproxy.pageant.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jsch.agentproxy.sshagent.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jsch.agentproxy.usocket-jna.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jsch.agentproxy.usocket-nc.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/jsr173_1.0_api.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/junit-4.12.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/kotlin-reflect.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/kotlin-runtime.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/log4j.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/markdownj-core-0.4.2-SNAPSHOT.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/microba.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/nanoxml-2.2.3.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/nekohtml-1.9.14.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/openapi.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/optimizedFileManager.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/oromatcher.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/picocontainer.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/protobuf-2.5.0.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/proxy-vole_20131209.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/pty4j-0.7.1.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/purejavacomm.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/resolver.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/resources.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/resources_en.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/rngom-20051226-patched.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/sanselan-0.98-snapshot.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/serviceMessages.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/slf4j-api-1.7.10.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/slf4j-log4j12-1.7.10.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/sqlite-jdbc-3.6.20.1.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/swingx-core-1.6.2.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/trang-core.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/trove4j.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/util.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/velocity.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/winp-1.23.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/xbean.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/xercesImpl.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/xml-apis-ext.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/xml-apis.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/xmlgraphics-commons-1.5.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/xmlrpc-2.0.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/xpp3-1.1.4-min.jar:/Applications/Tools/IntelliJ IDEA CE.app/Contents/lib/xstream-1.4.8.jar:/Users/pquitslund/src/git/clones/flutter-intellij/out/test/flutter-intellij:/Users/pquitslund/src/git/clones/flutter-intellij/out/production/flutter-intellij:/Users/pquitslund/src/git/clones/flutter-intellij/lib/dart-plugin/163.10154.19/Dart.jar:/Users/pquitslund/src/git/clones/flutter-intellij/lib/dart-plugin/163.10154.19/resources_en.jar:/Users/pquitslund/src/git/clones/flutter-intellij/lib/dart-plugin/deps/snakeyaml-1.13.jar" com.intellij.rt.execution.application.AppMain com.intellij.rt.execution.junit.JUnitStarter -ideVersion5 @w@/private/var/folders/00/0w9_8000h01000cxqpysvccm003j59/T/idea_working_dirs_junit.tmp @/private/var/folders/00/0w9_8000h01000cxqpysvccm003j59/T/idea_junit.tmp -socket56346
log4j:WARN No appenders could be found for logger (#com.intellij.util.ui.JBUI).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

java.lang.NoClassDefFoundError: org/apache/http/conn/ssl/SSLConnectionSocketFactory

    at com.intellij.util.net.ssl.CertificateManager.<clinit>(CertificateManager.java:99)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:348)
    at com.intellij.openapi.components.impl.ComponentManagerImpl.registerComponents(ComponentManagerImpl.java:392)
    at com.intellij.openapi.components.impl.ComponentManagerImpl.init(ComponentManagerImpl.java:102)
    at com.intellij.openapi.application.impl.ApplicationImpl.load(ApplicationImpl.java:403)
    at com.intellij.idea.IdeaTestApplication.getInstance(IdeaTestApplication.java:54)
    at com.intellij.idea.IdeaTestApplication.getInstance(IdeaTestApplication.java:46)
    at com.intellij.testFramework.LightPlatformTestCase.initApplication(LightPlatformTestCase.java:161)
    at com.intellij.testFramework.fixtures.impl.LightIdeaTestFixtureImpl.setUp(LightIdeaTestFixtureImpl.java:52)
    at com.intellij.testFramework.fixtures.impl.CodeInsightTestFixtureImpl.lambda$setUp$7(CodeInsightTestFixtureImpl.java:1197)
    at com.intellij.testFramework.EdtTestUtil$Companion$runInEdtAndWait$1.invoke(EdtTestUtil.kt:28)
    at com.intellij.testFramework.EdtTestUtil$Companion$runInEdtAndWait$1.invoke(EdtTestUtil.kt:26)
    at com.intellij.testFramework.EdtTestUtilKt.runInEdtAndWait(EdtTestUtil.kt:42)
    at com.intellij.testFramework.EdtTestUtil$Companion.runInEdtAndWait(EdtTestUtil.kt:28)
    at com.intellij.testFramework.EdtTestUtil.runInEdtAndWait(EdtTestUtil.kt)
    at com.intellij.testFramework.fixtures.impl.CodeInsightTestFixtureImpl.setUp(CodeInsightTestFixtureImpl.java:1196)
    at com.intellij.testFramework.fixtures.LightPlatformCodeInsightFixtureTestCase.setUp(LightPlatformCodeInsightFixtureTestCase.java:60)
    at io.flutter.FlutterCodeInsightFixtureTestCase.setUp(FlutterCodeInsightFixtureTestCase.java:15)
    at com.intellij.testFramework.UsefulTestCase.defaultRunBare(UsefulTestCase.java:372)
    at com.intellij.testFramework.EdtTestUtil$Companion$runInEdtAndWait$1.invoke(EdtTestUtil.kt:28)
    at com.intellij.testFramework.EdtTestUtil$Companion$runInEdtAndWait$1.invoke(EdtTestUtil.kt:26)
    at com.intellij.testFramework.EdtTestUtilKt$sam$Runnable$b0f40f3d.run(EdtTestUtil.kt)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:301)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:709)
    at java.awt.EventQueue$3.run(EventQueue.java:703)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:363)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Caused by: java.lang.ClassNotFoundException: org.apache.http.conn.ssl.SSLConnectionSocketFactory
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 38 more

(We should also probably add some info for running these tests to testing.md or create another doc.)

@devoncarew

devoncarew commented 7 years ago

Perhaps something we can look at locally? It looks like you need to configure a path to the Apache somewhere. Once we determine, we should update the testing.md doc -

skybrian commented 7 years ago

When I run Flutter Tests (Integration) from within IDEA it works for me. But perhaps that's not what you meant?

I only see one test, FlutterSdkUtilTest.testSetup.

pq commented 7 years ago

When I run Flutter Tests (Integration) from within IDEA it works for me. But perhaps that's not what you meant?

That's the one. Still fails for me. Interesting to hear it worked out of the box for you!

pq commented 7 years ago

OK, got this resolved. (Finally.)

It looks like somewhere along the line a bunch of dependencies got dropped from my classpath. First it was httpclient, then netty, then guava and cglib. Finally I just added the entire IDEA lib dir and lo and behold all is good.

Sounds like it was an issue on my end so no need to update docs.

Thanks for confirming that @skybrian!