1

我刚开始使用 Clojure,从未使用过 Java

我了解如何从终端创建和运行 leiningen 项目,但我不明白如何在运行命令之前在 REPL 中加载库。

我正在尝试使用 clj-webdriver 构建一个简单的网络抓取工具;我的原始文件看起来像这样

(ns prova.core (:gen-class))

(use 'clj-webdriver.taxi)

(set-driver! {:browser :firefox})

(defn -main
  [& args]

  (to "https://github.com/login")

  (input-text "#login_field"  "email")
  (input-text "#password"     "psw")

  (click "input[name='commit']")

)

我(认为)最接近的方法是进入 webdriver src 文件夹并尝试这个命令

penta@laptop:~/clj-webdriver-master/src/clj_webdriver$ clojure
Clojure 1.4.0
user=> (use 'taxi)

但它回来了

FileNotFoundException Could not locate taxi__init.class or taxi.clj on classpath: clojure.lang.RT.load (RT.java:432)

即使您在同一个文件夹中,文件taxy.clj 也确实存在。

那么,运行可以使用库函数的 REPL 的过程是什么?

非常感谢

4

1 回答 1

3

看一下leiningen构建工具,按照网站说明安装,新建一个项目。

lein new myproject
cd myproject

然后编辑project.clj在其中添加 clj-webdriver 作为依赖项:

(defproject myproject "0.1.0-SNAPSHOT"
  :description "FIXME: write description"
  :url "http://example.com/FIXME"
  :license {:name "Eclipse Public License"
            :url "http://www.eclipse.org/legal/epl-v10.html"}
  :dependencies [[org.clojure/clojure "1.5.1"]
                 [clj-webdriver "0.6.0"]])

然后键入lein repl,REPL 将在类路径上使用 clj-webdriver 启动。您现在应该能够像在示例中那样继续。

于 2013-09-28T12:50:21.010 回答