cursive-ide / cursive

Cursive: The IDE for beautiful Clojure code
588 stars 7 forks source link

Cannot open or import Leiningen project #841

Closed simon-katz closed 9 years ago

simon-katz commented 9 years ago

I'm using IntelliJ 14.0 and Cursive 14-0.1.54 on Windows 7.

I cannot open or import a Leiningen project, even a brand new one created with lein new.

If I try importing the project (either by selecting project.clj or the containing folder), when I reach the "Select Leiningen project to import" page there is no project listed.

If I try opening the project (again, either by selecting project.clj or the containing folder), I get:

IllegalArgumentException: No implementation of method: :make-reader of protocol: #'clojure.java.io/IOFactory found for class: nil

I tried disabling all plugins other than Cursive, but it makes no difference.

cursive-ide commented 9 years ago

This is very strange. Can you reproduce this, and then send me a copy of your log file? You can find it with Help→Show log in Explorer.

simon-katz commented 9 years ago

Here's the contents of the log file:

2015-04-30 18:07:12,597 [      0]   INFO -        #com.intellij.idea.Main - ------------------------------------------------------ IDE STARTED ------------------------------------------------------ 
2015-04-30 18:07:12,634 [     37]   INFO -        #com.intellij.idea.Main - IDE: IntelliJ IDEA (build #IU-139.224.1, 04 Nov 2014 00:00) 
2015-04-30 18:07:12,634 [     37]   INFO -        #com.intellij.idea.Main - OS: Windows 7 (6.1, amd64) 
2015-04-30 18:07:12,634 [     37]   INFO -        #com.intellij.idea.Main - JRE: 1.7.0_60-b19 (Oracle Corporation) 
2015-04-30 18:07:12,634 [     37]   INFO -        #com.intellij.idea.Main - JVM: 24.60-b09 (Java HotSpot(TM) 64-Bit Server VM) 
2015-04-30 18:07:12,638 [     41]   INFO -        #com.intellij.idea.Main - JVM Args: -Duser.home=C:\Users\43904295 -Xms128m -Xmx750m -XX:MaxPermSize=350m -XX:ReservedCodeCacheSize=225m -ea -Dsun.io.useCanonCaches=false -Djava.net.preferIPv4Stack=true -Djsse.enableSNIExtension=false -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -Xbootclasspath/a:C:\Program Files self-installed\intellij-14-ultimate\lib\boot.jar -Didea.paths.selector=IntelliJIdea14 
2015-04-30 18:07:13,503 [    906]   INFO -        #com.intellij.idea.Main - JNA library loaded (64-bit) in 865 ms 
2015-04-30 18:07:13,506 [    909]   INFO - penapi.util.io.win32.IdeaWin32 - Native filesystem for Windows is operational 
2015-04-30 18:07:13,508 [    911]   INFO -        #com.intellij.idea.Main - Using "FocusKiller" library to prevent focus stealing. 
2015-04-30 18:07:16,465 [   3868]   INFO - llij.ide.plugins.PluginManager - 126 plugins initialized in 2419 ms 
2015-04-30 18:07:16,519 [   3922]   INFO - llij.ide.plugins.PluginManager - Loaded bundled plugins: ASP (0.1), Android Support (10.0.8.12), Ant Support (1.0), Application Servers View (0.2.0), AspectJ Support (1.1), Bytecode Viewer (0.1), CFML Support (3.53), CSS Support, CVS Integration (11), ClearCase Integration (2.0), Cloud Foundry integration (1.0), CloudBees integration (1.0), CoffeeScript (2.0), Commander (1.0.0), Copyright (8.1), Coverage, Cucumber for Groovy (999.999), Cucumber for Java (999.999), DSM Analysis (1.0.0), Database Tools and SQL (1.0), Eclipse Integration (3.0), EditorConfig (1.0), Emma, Flash/Flex Support (1.0), FreeMarker support (1.0), GWT Support (1.0), Geronimo Integration (1.0), Gherkin (999.999), Git Integration (8.1), GitHub, GlassFish Integration (1.0), Google App Engine Integration (1.1.4), Gradle, Grails (9.0), Groovy (9.0), GuiceyIDEA (8.0), HAML, HTML Tools (2.0), Heroku integration (1.0), Hibernate Support (1.0), I18n for Java, IDEA CORE, IDEtalk (1.0), IntelliLang (8.0), J2ME (1.0), JBoss Drools Support (1.0), JBoss Integration (1.0), JBoss Seam Pageflow Support (1.0), JBoss Seam Pages Support (1.0), JBoss Seam Support (1.0), JBoss jBPM (2.0.0), JSR45 Integration (1.0), JUnit (1.0), Java Bytecode Decompiler (0.1), Java EE: Batch Applications (1.0), Java EE: Bean Validation Support (1.1), Java EE: Contexts and Dependency Injection (1.1), Java EE: EJB, JPA, Servlets (1.0), Java EE: JMS, JSON Processing, Concurrency, Transaction  (1.0), Java EE: Java Server Faces (2.2.X.), Java EE: RESTful Web Services (JAX-RS) (1.0), Java EE: Web Services (JAX-WS) (1.9), Java EE: WebSockets (1.0), Java Server Pages Integration (1.0), JavaFX (1.0), JavaScript Debugger (1.0), JavaScript Intention Power Pack (0.9.4), JavaScript Support (1.0), Jetty Integration (1.0), LESS support, Maven Integration, Maven Integration Extension, OpenShift integration (1.0), Osmorc (1.4.4), Perforce Integration (2.0), Persistence Frameworks Support (1.0), Playframework Support (1.0), Plugin DevKit (1.0), Properties Support, QuirksMode, REST Client, Refactor-X (2.01), Remote Hosts Access (0.1), Resin Integration (8.1), SASS support, SSH Remote Run (0.1), Spring AOP/@AspectJ (1.0), Spring Batch (1.0), Spring Data (1.0), Spring Integration Patterns (1.0), Spring MVC (1.0), Spring OSGi (1.0), Spring Roo Console (1.0), Spring Security (1.0), Spring Support (1.0), Spring Web Flow (1.0), Spring Web Services (1.0), Spring WebSocket (1.0), Spy-js (999.999), Struts 1.x (2.0), Struts 2 (1.0), Stylus support (999.999), Subversion Integration (1.1), TFS Integration (999.999), Tapestry support (1.0), Task Management (1.0), Terminal (0.1), TestNG-J (8.0), Thymeleaf (1.0), Time Tracking (1.0), Tomcat and TomEE Integration (1.0), UI Designer, UML Support (1.0), Vaadin Support (1.0), Velocity support (1.0), Visual SourceSafe Integration (2.0), W3C Validators (2.0), WebLogic Integration (1.0), WebSphere Integration (1.0), XPathView + XSLT Support (4), XSLT-Debugger (1.4), YAML, ZKM-Unscramble (1.0), dmServer Support (0.9.5), hg4idea (10.0) 
2015-04-30 18:07:16,519 [   3922]   INFO - llij.ide.plugins.PluginManager - Loaded custom plugins: Cursive (0.1.54) 
2015-04-30 18:07:17,755 [   5158]   INFO - ellij.util.io.PagedFileStorage - lower=100; upper=200; buffer=10; max=739246080 
2015-04-30 18:07:17,848 [   5251]   INFO - api.vfs.impl.local.FileWatcher - Starting file watcher: C:\Program Files self-installed\intellij-14-ultimate\bin\fsnotifier.exe 
2015-04-30 18:07:17,869 [   5272]   INFO - api.vfs.impl.local.FileWatcher - Native file watcher is operational. 
2015-04-30 18:07:18,681 [   6084]   INFO - lij.diagnostic.DebugLogManager - Set DEBUG for the following categories: [] 
2015-04-30 18:07:20,144 [   7547]   INFO -                  TestNG Runner - Create TestNG Template Configuration 
2015-04-30 18:07:20,741 [   8144]   INFO - ellij.project.impl.ProjectImpl - 23 project components initialized in 945 ms 
2015-04-30 18:07:20,741 [   8144]   INFO - le.impl.ModuleManagerComponent - 0 module(s) loaded in 0 ms 
2015-04-30 18:07:24,066 [  11469]   INFO -            cursive.repl.server - Started local REPL on port 50175 
2015-04-30 18:07:25,321 [  12724]   INFO - pl.stores.ApplicationStoreImpl - 101 application components initialized in 8766 ms 
2015-04-30 18:07:25,399 [  12802]   INFO - .intellij.idea.IdeaApplication - App initialization took 13325 ms 
2015-04-30 18:07:32,130 [  19533]   WARN - .ExternalResourceManagerExImpl - Cannot find standard resource. filename:/META-INF/tapestry_5_0_0.xsd class=class com.intellij.javaee.ResourceRegistrarImpl, classLoader:null 
2015-04-30 18:08:10,156 [  57559]  ERROR - llij.ide.plugins.PluginManager - No implementation of method: :make-reader of protocol: #'clojure.java.io/IOFactory found for class: nil 
java.lang.IllegalArgumentException: No implementation of method: :make-reader of protocol: #'clojure.java.io/IOFactory found for class: nil

    at clojure.core$_cache_protocol_fn.invoke(core_deftype.clj:567)

    at clojure.java.io$fn__9072$G__9054__9079.invoke(io.clj:69)

    at clojure.java.io$reader.doInvoke(io.clj:102)

    at clojure.lang.RestFn.invoke(RestFn.java:410)

    at leiningen.core.main$leiningen_version.invoke(main.clj:313)

    at clojure.lang.Var.invoke(Var.java:375)

    at clojure.lang.AFn.applyToHelper(AFn.java:152)

    at clojure.lang.Var.applyTo(Var.java:700)

    at clojure.lang.LispReader$EvalReader.invoke(LispReader.java:1053)

    at clojure.lang.LispReader$DispatchReader.invoke(LispReader.java:616)

    at clojure.lang.LispReader.readDelimitedList(LispReader.java:1138)

    at clojure.lang.LispReader$VectorReader.invoke(LispReader.java:1073)

    at clojure.lang.LispReader.readDelimitedList(LispReader.java:1138)

    at clojure.lang.LispReader$VectorReader.invoke(LispReader.java:1073)

    at clojure.lang.LispReader.readDelimitedList(LispReader.java:1138)

    at clojure.lang.LispReader$MapReader.invoke(LispReader.java:1081)

    at clojure.lang.LispReader.readDelimitedList(LispReader.java:1138)

    at clojure.lang.LispReader$MapReader.invoke(LispReader.java:1081)

    at clojure.lang.LispReader.read(LispReader.java:183)

    at clojure.lang.RT.readString(RT.java:1785)

    at clojure.core$read_string.invoke(core.clj:3648)

    at leiningen.core.utils$read_file.invoke(utils.clj:30)

    at leiningen.core.user$fn__10368.invoke(user.clj:67)

    at clojure.lang.AFn.applyToHelper(AFn.java:154)

    at clojure.lang.AFn.applyTo(AFn.java:144)

    at clojure.core$apply.invoke(core.clj:626)

    at clojure.core$memoize$fn__5467.doInvoke(core.clj:6079)

    at clojure.lang.RestFn.invoke(RestFn.java:408)

    at leiningen.core.user$fn__10371.invoke(user.clj:85)

    at clojure.lang.AFn.applyToHelper(AFn.java:152)

    at clojure.lang.AFn.applyTo(AFn.java:144)

    at clojure.core$apply.invoke(core.clj:626)

    at clojure.core$memoize$fn__5467.doInvoke(core.clj:6079)

    at clojure.lang.RestFn.invoke(RestFn.java:397)

    at leiningen.core.project$read_profiles.invoke(project.clj:654)

    at leiningen.core.project$project_with_profiles.invoke(project.clj:798)

    at cursive.leiningen$read_project.invoke(leiningen.clj:78)

    at cursive.leiningen$load_project.invoke(leiningen.clj:86)

    at clojure.lang.Var.invoke(Var.java:379)

    at cursive.leiningen.utils.Interop.loadProject(Interop.java:22)

    at cursive.leiningen.project.LeiningenProject.reload(LeiningenProject.java:38)

    at cursive.leiningen.project.LeiningenProject.<init>(LeiningenProject.java:34)

    at cursive.leiningen.project.LeiningenProject.create(LeiningenProject.java:29)

    at cursive.leiningen.project.LeiningenProjectOpenProcessor.doQuickImport(LeiningenProjectOpenProcessor.java:35)

    at com.intellij.projectImport.ProjectOpenProcessorBase.doOpenProject(ProjectOpenProcessorBase.java:132)

    at com.intellij.ide.impl.ProjectUtil.openOrImport(ProjectUtil.java:123)

    at com.intellij.ide.actions.OpenFileAction.a(OpenFileAction.java:96)

    at com.intellij.ide.actions.OpenFileAction.access$000(OpenFileAction.java:50)

    at com.intellij.ide.actions.OpenFileAction$1.consume(OpenFileAction.java:68)

    at com.intellij.ide.actions.OpenFileAction$1.consume(OpenFileAction.java:58)

    at com.intellij.openapi.fileChooser.ex.FileChooserDialogImpl.choose(FileChooserDialogImpl.java:152)

    at com.intellij.openapi.fileChooser.FileChooser.chooseFiles(FileChooser.java:111)

    at com.intellij.openapi.fileChooser.FileChooser.chooseFiles(FileChooser.java:89)

    at com.intellij.ide.actions.OpenFileAction.actionPerformed(OpenFileAction.java:58)

    at com.intellij.ui.components.labels.ActionLink$1.linkSelected(ActionLink.java:64)

    at com.intellij.ui.components.labels.LinkLabel.doClick(LinkLabel.java:111)

    at com.intellij.ui.components.labels.ActionLink.doClick(ActionLink.java:77)

    at com.intellij.ui.components.labels.LinkLabel$MyMouseHandler.mouseReleased(LinkLabel.java:304)

    at java.awt.Component.processMouseEvent(Component.java:6516)

    at javax.swing.JComponent.processMouseEvent(JComponent.java:3320)

    at java.awt.Component.processEvent(Component.java:6281)

    at java.awt.Container.processEvent(Container.java:2229)

    at java.awt.Component.dispatchEventImpl(Component.java:4872)

    at java.awt.Container.dispatchEventImpl(Container.java:2287)

    at java.awt.Component.dispatchEvent(Component.java:4698)

    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)

    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)

    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)

    at java.awt.Container.dispatchEventImpl(Container.java:2273)

    at java.awt.Window.dispatchEventImpl(Window.java:2719)

    at java.awt.Component.dispatchEvent(Component.java:4698)

    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)

    at java.awt.EventQueue.access$200(EventQueue.java:103)

    at java.awt.EventQueue$3.run(EventQueue.java:694)

    at java.awt.EventQueue$3.run(EventQueue.java:692)

    at java.security.AccessController.doPrivileged(Native Method)

    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)

    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)

    at java.awt.EventQueue$4.run(EventQueue.java:708)

    at java.awt.EventQueue$4.run(EventQueue.java:706)

    at java.security.AccessController.doPrivileged(Native Method)

    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)

    at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)

    at com.intellij.ide.IdeEventQueue.e(IdeEventQueue.java:748)

    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:573)

    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:384)

    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)

    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)

    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)

    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)

    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)

    at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

2015-04-30 18:08:10,160 [  57563]  ERROR - llij.ide.plugins.PluginManager - IntelliJ IDEA 14.0  Build #IU-139.224.1 
2015-04-30 18:08:10,160 [  57563]  ERROR - llij.ide.plugins.PluginManager - JDK: 1.7.0_60 
2015-04-30 18:08:10,160 [  57563]  ERROR - llij.ide.plugins.PluginManager - VM: Java HotSpot(TM) 64-Bit Server VM 
2015-04-30 18:08:10,160 [  57563]  ERROR - llij.ide.plugins.PluginManager - Vendor: Oracle Corporation 
2015-04-30 18:08:10,160 [  57563]  ERROR - llij.ide.plugins.PluginManager - OS: Windows 7 
2015-04-30 18:08:10,161 [  57564]  ERROR - llij.ide.plugins.PluginManager - Last Action:  
cursive-ide commented 9 years ago

Do you have a call to leiningen.core.main/leiningen-version in your project.clj somewhere?

simon-katz commented 9 years ago

That's it! Thank you.

I guess it would be good if such a call didn't cause a problem, but this isn't urgent for me.

cursive-ide commented 9 years ago

Yeah, it's a bit tricky - project.clj is basically executable code (although most people don't think of it like that), so unfortunately I can't really validate that it's ok before loading. I'm planning some changes to the lein integration soon which will hopefully fix this. In the meantime I'll close this issue for now.