Clojure编译

Clojure编译,clojure,compilation,Clojure,Compilation,我对clojure编译有一个问题:当我在windows和终端上的cmd.exe(在clojure的主文件夹中执行)中使用“(compile app.clj)”函数时(在主目录中,clojure是从ubuntu软件中心安装的)在linux中,clojure抛出classnotfoundexception,并且在具备所需设置时未找到源代码。请有人帮我设置编译。谢谢 首先,您没有正确使用compile函数。 明确说明参数必须是名称空间符号。我不知道app.clj的名称空间,但它应该看起来像my-pro

我对clojure编译有一个问题:当我在windows和终端上的cmd.exe(在clojure的主文件夹中执行)中使用“(compile app.clj)”函数时(在主目录中,clojure是从ubuntu软件中心安装的)在linux中,clojure抛出classnotfoundexception,并且在具备所需设置时未找到源代码。请有人帮我设置编译。谢谢

首先,您没有正确使用compile函数。 明确说明参数必须是名称空间符号。我不知道app.clj的名称空间,但它应该看起来像my-project.app。因此,正确的调用类似于:

(compile 'my-project.app)

也可能有其他问题(比如没有定义正确的类路径),但是可以使用。如果您还没有使用它,您肯定应该使用。

您好!谢谢,但我试过了,但这不是我问题的解决办法。我已经阅读了文档,但这不起作用。使用此选项时的结果是:“FileNotFoundException找不到myp/app/clj_init.class或myp/app/clj.clj”,当我将文件夹树设置为“myp/app/clj.clj”时,clojure打印:“FileNotFoundException找不到app.clj…”。当我将文件夹树设置为“myp/app/clj.clj”时,clojure打印:“FileNotFoundException找不到app.clj…”。当我想使用leiningen时,打印“leiningen缺少它的依赖项。请参阅自述文件中的“Building”。并且解决方案中没有安装工具。到目前为止,我还没有担心过使用我尝试过的许多语言进行编译。@user1995302,对我来说似乎是一个类路径问题。就像我以前写的一样,Leiningen大部分时间都在为您处理这个问题。如果您使用Ubuntu(或任何其他基于Debian的Linux),请尝试使用apt-get(sudo-apt-get-install-leiningen-in-terminal)安装它。之后,只需使用leinnewproject\u名称创建新项目,并将源文件放在src/project\u name/中。仅确保名称空间对应于路径。这可能有点棘手。顺便说一句。在Clojure中开发应用程序实际上并不需要编译。如果您想生成独立的应用程序,只需使用lein uberjar将项目打包到jar中,然后将其用作任何其他Java jar应用程序。到目前为止,您最好的计划是在编译和运行Clojure时使用Leiningen。如果它对你不起作用,就用这个问题单独问一个问题。