【问题标题】:Leiningen not working MacOs Mojave due to Caused by: java.io.FileNotFoundException: Could not locate clojure/tools/nrepl/server__init.classLeiningen 无法正常工作 MacOs Mojave 原因是:java.io.FileNotFoundException:无法找到 clojure/tools/nrepl/server__init.class
【发布时间】:2020-04-28 18:06:42
【问题描述】:

我在莫哈韦沙漠,无法让 leiningen 工作。

我使用的是java 8,然后尝试升级到11无济于事。目前使用:

openjdk version "11.0.7" 2020-04-14
OpenJDK Runtime Environment AdoptOpenJDK (buildb11.0.7+10)
OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.7+10, mixed mode)

我尝试将 lein 复制到我的 /usr/local/bin 和 brew install 但在这两种情况下我都收到错误:

Caused by: java.io.FileNotFoundException: Could not locate clojure/tools/nrepl/server__init.class, clojure/tools/nrepl/server.clj or clojure/tools/nrepl/server.cljc on classpath.

【问题讨论】:

  • 你能分享更多信息吗?你如何运行 leiningen?你的项目设置是什么?通常,nrepl 应该只是出现在 leiningen 项目中。见nrepl.org/nrepl/usage/server.html#_using_leiningen
  • 所以我只是想学习 clojure,这似乎是第一步。我只是 brew 安装了 lein 并尝试从 github 复制脚本。更具体地说,我关注的是:braveclojure.com/getting-started 并尝试运行 lein new app clojure-noob
  • 嗯,这确实应该工作。我在 Linux 上,并且只按照leiningen.org 中的描述手动下载了 lein bash 脚本。你肯定是在正确的轨道上!
  • 可悲的是我现在没有轨道!如果没有 lein 工作,我真的不知道 clojure 从那里去哪里。我看到 boot 存在,所以我想我可以尝试一下,但我真的很困惑为什么这不起作用。
  • 很抱歉我无法为您提供帮助。我在 Linux 上,所以无法测试。

标签: clojure leiningen


【解决方案1】:

我最近在 macOS Mojave (10.14.6) 上遇到了类似的问题。以下命令对我有用:

rm -rf .lein

但是,运行此行之前,请确保...

  1. ...您在您的主目录中。
  2. ... .lein 是与您的 leiningen 安装相关联的目录,仅此而已!
  3. ...您已备份与 leiningen 安装相关的所有配置文件、自定义包等。

点击enter 后,.lein 目录将被删除。当您通过 leinigen lein repl 启动 repl 时,该目录将被重建。

【讨论】:

  • 谢谢你,奇怪的是我昨天从一个 github 问题中修复了自己!我执行了类似的操作,但只需要删除配置文件。所以 rm ~/.lein/profiles.clj 我不久前安装了 clojure,我猜配置文件中的内容破坏了它(关于 nrepl)
  • 很高兴听到。您介意将我的答案标记为解决方案吗?
  • 这救了我,遇到了lein classpath 命令不起作用的问题。谢谢!
猜你喜欢
  • 1970-01-01
  • 2021-07-23
  • 2014-02-12
  • 2019-03-07
  • 2017-04-29
  • 1970-01-01
  • 2015-10-28
  • 2011-09-02
  • 1970-01-01
相关资源
最近更新 更多