2011-01-29 9 views
15

結果のないJavaライブラリの外部にあるクラスをインポートしようとしています。私はEclipse Heliosで反時計回りに走っています。 commons-land-2.6.jarはビルドパスにあります。私はClojureには新しく、これを理解することはできません。すべての助けが大いに感謝!JavaクラスをClojureにインポートする

当然のことながら、これは正常に動作します:

1:7 exp2=> (import '(java.io FileReader)) 

> java.io.FileReader

が、これにはない:

1:6 exp2=> (import '(org.apache.commons.lang.StringUtils)) 

> nilを

これは最終的な目標です:

1:10 exp2 =>(defn空白? [文字](のStringUtils(のisEmpty文字)。))

>のjava.lang.Exception:シンボルを解決できません:このコンテキストでのStringUtils(REPL-1:10)

答えて

23

あなたは1を作りましたエラー - あなたはorg.apache.commons.langとStringUtilsクラスの間にスペースを入れませんでした。輸入のこのフォームでは、たとえば、1つのパッケージからいくつかのクラスをインポートすることができます:

(import '(org.apache.commons.lang StringUtils SystemUtils)) 

あなたが唯一のクラスをインポートしたい場合は、その後、あなたは括弧なしのバージョンを使用することができます。

(import 'org.apache.commons.lang.StringUtils) 

と理由その機能

を呼び出すために

(StringUtils/isEmpty character) 

:のStringUtilsの関数は静的では、次のコードを使用する必要があります

関連する問題