如何使Eclipse / Counterclockwise使用Macports安装Clojure

时间:2012-03-17 12:42:41

标签: eclipse clojure macports counterclockwise

我是 clojure 的新手,经过几个小时摆弄Netbeans / Enclojure和Eclipse / Counterclockwise后,我终于设置了 Eclipse / Counterclockwise - 只是因为它是第一个我能够实际运行。

但是,在REPL中,我得到了Clojure版本1.2,虽然我在我的系统中工作的那个( Macports )是1.3。

如何让Eclipse / Counterclockwise使用这个版本?除了语法高亮规则和其他一些小问题之外,我在首选项中找不到任何关于Clojure的内容。

1 个答案:

答案 0 :(得分:3)

基本上,Eclipse / CCW REPL使用的Clojure版本是Clojure版本,它包含在您启动REPL的项目的类路径中。如果将它包含在项目的引用库中,则REPL将从该版本的Clojure开始。

您可以通过在Package Explorer>中右键单击项目名称来包含它。属性> Java构建路径>添加罐子>浏览(Macport)clojure jar文件>完成。

但是,由于您需要为所有外部库和它们自己依赖的库(无论是基于Java还是基于Clojure)执行此操作,因此在构建分发项目时,这可能会变得乏味,甚至更糟。

以结构方式完成任务的最简单方法是将Leiningen与Leiningen CCW插件结合使用。首先根据leiningen页面安装Leiningen。然后调用lein plugin install lein-ccw "1.2.0"安装leiningen CCW插件。

如果您正在开始一个新项目,请cd到应该放入项目的父目录。然后,使用lein new projectname,这将在\ projectname子目录中创建一个新的Clojure项目结构。

在该项目的根目录中,将创建一个project.clj文件,用于管理和下载您要使用的库以及它们自己所依赖的所有库(有关详细信息,请参阅leiningen站点)。默认情况下,lein new将对Clojure的引用放在那里。

库将存储在本地库存储库中,因此只能写入磁盘一次。

进入\ projectname子目录并运行lein deps,leiningen将下载当前的依赖项(在本例中仅为clojure),并将它们放入存储库。

现在运行lein ccw,ccw lein插件将创建并更新Eclipse项目和类路径文件。

在此之后,您可以通过选择菜单File>在Eclipse中打开项目。导入>一般>将现有项目导入工作区>选择根目录>浏览到项目位置>完成。

现在,如果您需要为项目创建一个新库,那么您唯一需要做的就是将库数据放在project.clj依赖项部分中。其他库的依赖符号和版本号可以在Clojars site或Github自述库中找到。

然后,再次从项目目录运行lein deps以下载并安装正确的库,并lein ccw更新Eclipse项目和类路径文件。在Eclipse Package Explorer中刷新项目树,您的项目将再次更新,包括您需要的所有新库。

您甚至可以通过遵循此guide在Eclipse中创建“外部运行配置”,以与创建lein ccw运行命令相同的方式或添加它来自动执行上一段中的步骤到lein deps一个。这样,您只需在编辑project.clj后按下一个按钮,所有步骤都将由Eclipse执行。

在掌握了这些基本步骤之后,您可以开始探索Leiningen的其他用途,例如构建项目以进行分发/部署。