2

当我第一次打开全新的逆时针独立安装并尝试创建 Clojure 项目时,我收到一个错误对话框,其中包含以下消息:

The selected wizard could not be started.

Reason:
Plug-in ccw.core was unable to load class ccw.leiningen.NewLeiningenProjectWizard

Details:
An error occurred while automatically activating bundle ccw.core (4)

似乎没有关于此错误的更多信息。我已将逆时针安装目录 (C:\counteritarian-0.35.1.STABLE001) 放在类路径中,但这并没有影响任何东西。

如果我尝试打开命名空间浏览器,我会得到类似的结果:

org.eclipse.core.runtime.CoreException: Plug-in ccw.core was unable to load class ccw.repl.NamespaceBrowser.
    at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.throwException(RegistryStrategyOSGI.java:194)
    at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:176)
    at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905)
    ...etc...

我怀疑这是某种类型的类路径问题,但由于我是 Java 新手,我不知道如何解决这个问题。

我已经在网上搜索并没有发现任何看起来像这个问题的东西。

这发生在多台机器上:

  • Windows 10 64 位
  • 适用于 Windows 64 的逆时针 IDE 版本 0.35.1.STABLE001
  • Clojure 1.8
  • 爪哇

    java version "1.8.0_111" Java(TM) SE Runtime Environment (build 1.8.0_111-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)

任何建议表示赞赏。

编辑

我最好先安装 Eclipse Neon 然后将逆时针安装为插件吗?

编辑

TL;DR 如果您仔细阅读下面的错误日志摘录,您会在底部附近找到

Caused by: java.lang.IllegalArgumentException: No implementation of method: :matcher-fn of protocol: #'net.cgrand.parsley.lrplus/MatcherFactory found for class: paredit.parser$reify__1553

那么这是正在运行的 Clojure 版本的某种问题吗?我确实注意到在下面的逆时针依赖项中我看到

[org.clojure/clojure-contrib "1.2.0"]

这似乎来自一个非常过时的 Clojure 版本。我在我的机器上有这个,因为它是另一个编辑器(jEdit)插件的一部分。这可能是问题的根源吗?我有 jEdit 及其 Clojure 插件,它在我也尝试过的其他机器上包含这个过时的 Clojure 版本,但包含旧版本 Clojure 的目录不在类路径或路径中。???

FWIW 当我导出 Eclipse 错误日志视图时,我得到大约 12K+ 行的输出。前几百是

!SESSION 2016-12-30 20:49:15.136 -----------------------------------------------
eclipse.buildId=0.35.1.STABLE001
java.version=1.8.0_111
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US
Command-line arguments:  -os win32 -ws win32 -arch x86_64

!ENTRY ccw.core 1 0 2016-12-30 20:49:31.022
!MESSAGE CCWPlugin.start(): ENTER

!ENTRY ccw.core 1 0 2016-12-30 20:49:36.144
!MESSAGE Counterclockwise dependencies:
        [bultitude "0.2.1"]
        [ccw/ccw.server "0.2.1"]
        [ccw/clojure-ccw "1.7.0"]
        [cheshire "5.0.2"]
        [classlojure "0.6.6"]
        [clj-http "0.9.2"]
        [clj-stacktrace "0.2.7"]
        [clj-tuple "0.1.2"]
        [clojure-complete "0.2.3"]
        [com.cemerick/drawbridge "0.0.6"]
        [com.cemerick/pomegranate "0.3.0"]
        [com.fasterxml.jackson.core/jackson-core "2.1.3"]
        [com.fasterxml.jackson.dataformat/jackson-dataformat-smile "2.1.2"]
        [com.hypirion/io "0.3.1"]
        [commons-codec "1.9"]
        [commons-fileupload "1.2.1"]
        [commons-io "2.4"]
        [commons-lang "2.6"]
        [commons-logging "1.1.3"]
        [dynapath "0.2.0"]
        [jline "2.12"]
        [leiningen "2.5.1"]
        [leiningen-core "2.5.1"]
        [net.cgrand/parsley "0.9.2"]
        [net.cgrand/regex "1.1.0"]
        [net.cgrand/sjacket "0.1.1"]
        [net.mikera/cljunit "0.2.0"]
        [org.apache.httpcomponents/httpclient "4.3.3"]
        [org.apache.httpcomponents/httpcore "4.3.2"]
        [org.apache.httpcomponents/httpmime "4.3.3"]
        [org.apache.maven/maven-aether-provider "3.0.4"]
        [org.apache.maven/maven-model "3.0.4"]
        [org.apache.maven/maven-model-builder "3.0.4"]
        [org.apache.maven/maven-repository-metadata "3.0.4"]
        [org.apache.maven.indexer/indexer-artifact "4.1.3"]
        [org.apache.maven.indexer/indexer-core "4.1.3"]
        [org.apache.maven.wagon/wagon-http "2.7"]
        [org.apache.maven.wagon/wagon-http-shared "2.7"]
        [org.apache.maven.wagon/wagon-provider-api "2.2"]
        [org.clojure/clojure-contrib "1.2.0"]
        [org.clojure/core.incubator "0.1.0"]
        [org.clojure/data.xml "0.0.3"]
        [org.clojure/java.classpath "0.2.2"]
        [org.clojure/java.data "0.1.1"]
        [org.clojure/tools.cli "0.3.1"]
        [org.clojure/tools.logging "0.2.3"]
        [org.clojure/tools.macro "0.1.1"]
        [org.clojure/tools.nrepl "0.2.10"]
        [org.clojure/tools.reader "0.8.4"]
        [org.codehaus.plexus/plexus-classworlds "2.4"]
        [org.codehaus.plexus/plexus-component-annotations "1.5.5"]
        [org.codehaus.plexus/plexus-interpolation "1.14"]
        [org.codehaus.plexus/plexus-utils "2.0.6"]
        [org.jsoup/jsoup "1.7.2"]
        [org.sonatype.aether/aether-api "1.13.1"]
        [org.sonatype.aether/aether-connector-file "1.13.1"]
        [org.sonatype.aether/aether-connector-wagon "1.13.1"]
        [org.sonatype.aether/aether-impl "1.13.1"]
        [org.sonatype.aether/aether-spi "1.13.1"]
        [org.sonatype.aether/aether-util "1.13.1"]
        [org.sonatype.sisu/sisu-inject-bean "2.2.3"]
        [org.sonatype.sisu/sisu-inject-plexus "2.2.3"]
        [org.tcrawley/dynapath "0.2.3"]
        [pedantic "0.2.0"]
        [potemkin "0.3.4"]
        [prismatic/schema "0.4.4"]
        [quoin "0.1.2"]
        [reply "0.3.5"]
        [riddley "0.1.6"]
        [ring/ring-core "1.0.2"]
        [robert/hooke "1.3.0"]
        [scout "0.1.0"]
        [slingshot "0.10.3"]
        [stencil "0.3.5"]
        [trptcolin/versioneer "0.1.1"]

!ENTRY org.eclipse.osgi 4 0 2016-12-30 20:49:40.712
!MESSAGE An error occurred while automatically activating bundle ccw.core (4).
!STACK 0
org.osgi.framework.BundleException: Exception in ccw.CCWPlugin.start() of bundle ccw.core.
    at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:792)
    at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:721)
    at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:941)
    at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:318)
    at org.eclipse.osgi.container.Module.doStart(Module.java:571)
    at org.eclipse.osgi.container.Module.start(Module.java:439)
    at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:454)
    at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107)
    at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:531)
    at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:324)
    at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:327)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:402)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:352)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:344)
    at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:160)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at org.eclipse.osgi.internal.framework.EquinoxBundle.loadClass(EquinoxBundle.java:573)
    at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174)
    at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905)
    at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
    at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
    at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.processLanguages(ReflectionContributionFactory.java:137)
    at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.<init>(ReflectionContributionFactory.java:45)
    at org.eclipse.e4.ui.internal.workbench.swt.E4Application.createDefaultHeadlessContext(E4Application.java:502)
    at org.eclipse.e4.ui.internal.workbench.swt.E4Application.createDefaultContext(E4Application.java:522)
    at org.eclipse.e4.ui.internal.workbench.swt.E4Application.createE4Workbench(E4Application.java:203)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:628)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:606)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
    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:669)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1515)
Caused by: java.lang.ExceptionInInitializerError
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Unknown Source)
    at clojure.lang.RT.classForName(RT.java:2155)
    at clojure.lang.RT.classForName(RT.java:2164)
    at clojure.lang.RT.loadClassForName(RT.java:2183)
    at clojure.lang.RT.load(RT.java:436)
    at clojure.lang.RT.load(RT.java:412)
    at clojure.core$load$fn__5448.invoke(core.clj:5866)
    at clojure.core$load.doInvoke(core.clj:5865)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.core$load_one.invoke(core.clj:5671)
    at clojure.core$load_lib$fn__5397.invoke(core.clj:5711)
    at clojure.core$load_lib.doInvoke(core.clj:5710)
    at clojure.lang.RestFn.applyTo(RestFn.java:142)
    at clojure.core$apply.invoke(core.clj:632)
    at clojure.core$load_libs.doInvoke(core.clj:5749)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invoke(core.clj:632)
    at clojure.core$require.doInvoke(core.clj:5832)
    at clojure.lang.RestFn.invoke(RestFn.java:619)
    at ccw.editors.clojure.editor_support$loading__5340__auto____2430.invoke(editor_support.clj:12)
    at ccw.editors.clojure.editor_support__init.load(Unknown Source)
    at ccw.editors.clojure.editor_support__init.<clinit>(Unknown Source)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Unknown Source)
    at clojure.lang.RT.classForName(RT.java:2155)
    at clojure.lang.RT.classForName(RT.java:2164)
    at clojure.lang.RT.loadClassForName(RT.java:2183)
    at clojure.lang.RT.load(RT.java:436)
    at clojure.lang.RT.load(RT.java:412)
    at clojure.core$load$fn__5448.invoke(core.clj:5866)
    at clojure.core$load.doInvoke(core.clj:5865)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.core$load_one.invoke(core.clj:5671)
    at clojure.core$load_lib$fn__5397.invoke(core.clj:5711)
    at clojure.core$load_lib.doInvoke(core.clj:5710)
    at clojure.lang.RestFn.applyTo(RestFn.java:142)
    at clojure.core$apply.invoke(core.clj:632)
    at clojure.core$load_libs.doInvoke(core.clj:5749)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invoke(core.clj:632)
    at clojure.core$require.doInvoke(core.clj:5832)
    at clojure.lang.RestFn.invoke(RestFn.java:1096)
    at ccw.editors.clojure.hover_support$loading__5340__auto____7902.invoke(hover_support.clj:12)
    at ccw.editors.clojure.hover_support__init.load(Unknown Source)
    at ccw.editors.clojure.hover_support__init.<clinit>(Unknown Source)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Unknown Source)
    at clojure.lang.RT.classForName(RT.java:2155)
    at clojure.lang.RT.classForName(RT.java:2164)
    at clojure.lang.RT.loadClassForName(RT.java:2183)
    at clojure.lang.RT.load(RT.java:436)
    at clojure.lang.RT.load(RT.java:412)
    at clojure.core$load$fn__5448.invoke(core.clj:5866)
    at clojure.core$load.doInvoke(core.clj:5865)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.core$load_one.invoke(core.clj:5671)
    at clojure.core$load_lib$fn__5397.invoke(core.clj:5711)
    at clojure.core$load_lib.doInvoke(core.clj:5710)
    at clojure.lang.RestFn.applyTo(RestFn.java:142)
    at clojure.core$apply.invoke(core.clj:632)
    at clojure.core$load_libs.doInvoke(core.clj:5749)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invoke(core.clj:632)
    at clojure.core$require.doInvoke(core.clj:5832)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.lang.Var.invoke(Var.java:379)
    at ccw.util.osgi.ClojureOSGi$1.run(ClojureOSGi.java:137)
    at ccw.util.osgi.ClojureOSGi.withBundle(ClojureOSGi.java:107)
    at ccw.util.osgi.ClojureOSGi.withBundle(ClojureOSGi.java:52)
    at ccw.util.osgi.ClojureOSGi.require(ClojureOSGi.java:133)
    at ccw.util.ClojureInvoker.newInvoker(ClojureInvoker.java:46)
    at ccw.util.ClojureInvoker.newInvoker(ClojureInvoker.java:42)
    at ccw.CCWPlugin.initInjections(CCWPlugin.java:727)
    at ccw.CCWPlugin.start(CCWPlugin.java:276)
    at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:771)
    at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:764)
    ... 42 more
Caused by: java.lang.IllegalArgumentException: No implementation of method: :matcher-fn of protocol: #'net.cgrand.parsley.lrplus/MatcherFactory found for class: paredit.parser$reify__1553
    at clojure.core$_cache_protocol_fn.invoke(core_deftype.clj:554)
    at net.cgrand.parsley.lrplus$eval775$fn__776$G__766__783.invoke(lrplus.clj:32)
    at net.cgrand.parsley.lrplus$matcher$fn__846.invoke(lrplus.clj:123)
4

1 回答 1

0

好的,问题解决了。

解决方案相当简单——归结为一个老笑话:

病人:医生,我这样做的时候很痛!

医生:那就不要那样做!!!!!!

在这种情况下,“不要那样做!” 是“不要使用 CounterClockwise 的预构建独立版本”,至少在 Windows 上是这样。安装 Eclipse Neon(我使用了来自http://www.eclipse.org/downloads/eclipse-packages/的“Eclipse IDE For Java Developers”包的 64 位版本),进入市场(Help/Eclipse Marketplace. ..),在查找框中输入“逆时针”,回车,安装逆时针插件,重启Eclipse,它就运行了。我仍然无法让它调试器工作——它不会在断点处中断——但至少我已经让它在某种程度上工作了。

于 2016-12-31T14:57:54.913 回答