2011-12-20 8 views
1

開始編集: 主に私のClojureプログラムでJavaクラスを使用したい。JavaをClojureで作成するCakeを使用する

私はまた、 をマージしているので、ケーキからリインに戻ることについていくつかの良いアドバイスを得ました。

これを読んでいる人は、Javaを学ぶよりもJava/Clojureビルド環境を設定するための書籍をもっと推薦できる人がいたら、感謝します。 終了編集:

私はJavaコードを読むことができますが、私はJavaプログラマーではありません。私はケーキを使用してClojureメインプログラムを構築しており、Clojureメインの一部となるJavaクラスを作成する必要があります。 MyClass.classをClojureビルドに組み込む方法を理解できません。

ここでは、私のproject.cljの後に、アプリケーションの.cljファイルのいくつかの行が続きます。

(defproject ba1-app "0.0.1-SNAPSHOT" 
    :description "TODO: add summary of your project" 
    :dependencies [[org.clojure/clojure "1.2.1"] 
       [org.clojure/tools.cli "0.1.0"]] 
    :main ba2-app) 

(ns ba2-app 
    (:gen-class) 
    (:use [clojure.string :only [split]] 
      [clojure.string :only [join]])) 

(def^:dynamic avail-trans [\W \D]) 
(def^:dynamic acct-types [[\C 0.02][\S 0.04] [\M 0.06]]) 
. 
. 
. 

1).javaファイルは、.cljアプリケーションモジュールと同じディレクトリに移動する必要がありますか。

2)ビルド手順は何ですか?

ありがとうございました。

答えて

2

あなたのやりたいことははっきりとは分かりません。私は、あなたがJavaクラスをコンパイルして、あなたのソースで使用したいと思っています。この場合、特別なことを行う必要はありません。あなたが望むあなたのJavaクラス(たとえば、ディレクトリ '/ project_dir/SRC')を入れて、あなたのproject.cljファイルに

:java-source-path "src" 

を追加します。この場合、javaクラスはclojureファイルとともにコンパイルされ、パッケージ階層ルートは選択したディレクトリから開始されます。他のクラス(:import)を(ns ...)の形式で使用するか、直接(import ...)のように、これらのクラスを使用することができます。

UPD。また、javaソースディレクトリをあなたのソースと自由に混在させることができるので、project.cljオプション:source-path:java-source-partを同じ値(この例では "src")に設定することができます。

+0

ご回答いただきありがとうございます。助けになる。 – octopusgrabbus

関連する問題