Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Debugging 使用IntelliJ Idea 10和La Closure插件版本0.3.15调试Clojure_Debugging_Clojure_Intellij Idea - Fatal编程技术网

Debugging 使用IntelliJ Idea 10和La Closure插件版本0.3.15调试Clojure

Debugging 使用IntelliJ Idea 10和La Closure插件版本0.3.15调试Clojure,debugging,clojure,intellij-idea,Debugging,Clojure,Intellij Idea,我正在使用IntelliJ Idea 10和La Closure插件版本0.3.15 Java6,我在一个项目中添加了Clojure1.2 我在Java代码上设置的断点会被命中,但我设置的断点 Clojure没有。事实上,如果在Java上停止调试器 断点,Clojure代码上的断点中有一个x,并且 有一个警告,例如,在中找不到可执行代码 第4行在debugland$eval3的课堂上 我试过在Clojure的核心函数中设置断点,比如println, 但我还是得到了红色的x。非常非常感谢您的帮助

我正在使用IntelliJ Idea 10和La Closure插件版本0.3.15 Java6,我在一个项目中添加了Clojure1.2

我在Java代码上设置的断点会被命中,但我设置的断点 Clojure没有。事实上,如果在Java上停止调试器 断点,Clojure代码上的断点中有一个x,并且 有一个警告,例如,在中找不到可执行代码 第4行在debugland$eval3的课堂上

我试过在Clojure的核心函数中设置断点,比如println, 但我还是得到了红色的x。非常非常感谢您的帮助 在这个问题上。我用Clojure 1.1和1.2两种类似的工具尝试了Idea 9
结果。

我相信正在发生的事情是Clojure正在创建Idea的调试器不理解的jvm原语。这可能意味着原语不是Idea通常识别的大小或类型。见和

这可能可以通过创建Clojure在编写虚拟机代码时使用的结构/原语的目录,并在调试Clojure时切换到该目录来解决。不幸的是,这也意味着您可能需要等待IntelliJ来解决问题

我已将问题发布到Jetbrains技术支持。

我正在使用Clojure 1.3(从github源代码构建)、LaClojure 0.3.74和运行在IDEA 10.0.3上的Sun Java 6u24。我的断点似乎像广告中所说的那样工作(在红点中得到复选标记),尽管在非评估性代码(如[]与函数名[])的断点上会得到x。例如:

(ns clojure.examples.hello
(:gen-class))

(defn hello          <---- Get check breakpoints here.
  []                 <---- Get x breakpoints here, can't eval [] but hello[] is okay!!!
  (let [a 12
        b (/ a 2)    <---- Get check breakpoints here.
        c (* b 3)]
    (if (< b a)
      (println (str b "<" a))      <---- Get check breakpoints here.
      (println (str a "<" b)))))
(ns clojure.examples.hello
(:gen类)

(defn hello不确定这是否有助于您的特定情况,因为我的项目是纯clojure,但在我为我的项目设置clojure方面之前,我无法让调试器达到断点(奇怪的是,我不知道如何添加到现有项目中-我必须使用该方面创建一个新项目)

本博客介绍了一些对我有用的步骤:

我正在使用IntelliJ IDEA 14.1.4和La Clojure 0.7.82