我似乎做错了什么.我已经从git构建了clojure,并因此调用它:
java -cp clojure.jar clojure.main
Run Code Online (Sandbox Code Playgroud)
我得到了repl,然后我输入:
(import 'java.lang.string)
Run Code Online (Sandbox Code Playgroud)
我得到:
java.lang.ClassNotFoundException: java.lang.string (NO_SOURCE_FILE:1)
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用lang.string,因为我认为它必须存在于某个类路径上.我尝试过其他图书馆,都没有多少运气.我究竟做错了什么?
Bri*_*per 14
String 应该大写,就是这样.
user> (import 'java.lang.String)
java.lang.String
Run Code Online (Sandbox Code Playgroud)
但是所有java.lang内容都已导入并且默认可用,因此您不需要这样做.
在非repl练习中,可能包含Java类的最好方法是ns宏.
(ns foo.bar
(:refer-clojure :exclude [ancestors printf])
(:require (clojure.contrib sql sql.tests))
(:use (my.lib this that))
(:import (java.util Date Timer Random)
(java.sql Connection Statement)))
Run Code Online (Sandbox Code Playgroud)