مشكلة تجميع في كلوجر
-
03-07-2019 - |
سؤال
ولقد تم في محاولة لتجميع test.clj بسيطة جدا في كلوجر دون أي نجاح. لدي rel="nofollow خيط على في ساعد //groups.google.com/group/clojure كلوجر Google مجموعة مع عدة ردود، ولكن لا شيء. لتلخيص بسرعة، وهنا هو ملف كلوجر بلدي:
(ns test.test
(:gen-class))
(defn -main
[gre]
(println (str "Hello " gre)))
وأساسا انها ملف سبيل المثال المقدمة في كلوجر الوثائق .
ولقد وضعت هذا الملف الخاصة بذلك في clojure/src/test/test.clj
، ويجب أن تكون قادرة على ترجمة مع (compile 'test.test)
، ولكن أظل الحصول على خطأ:
java.io.IOException: The system cannot find the path specified (test.clj:1)الذي يقودني إلى الاعتقاد أنها مشكلة CLASSPATH. لقد حاولت تشغيل كلوجر مع كافة الأوامر القياسية الواردة في كلوجر documenation فضلا عن أحدث اقتراح من موضوع
java -classpath .;src;classes;clojure.jar clojure.main
.
وإذا كان يساعد، يا نظام الملفات يبدو مثل هذا:
-+-clojure
+-classes/
+-+-src/
| |-+-test/
| | \-test.clj
+-\-test.clj
+-test.clj
+-clojure.jar
وP.S. وأنا على تشغيل ويندوز فيستا في نهاية المطاف لذلك قد <م> ربما م> مشكلة أذونات، ولكن لقد راجعت الأذونات ولا يمكن العثور على أي شيء خاطئ معهم.
المحلول
وإخراج وحدة التحكم لتجميع <م> test.clj م> على نظام التشغيل Windows:
C:\clojure>dir /b/s
C:\clojure\classes
C:\clojure\src
C:\clojure\src\test
C:\clojure\src\test\test.clj
C:\clojure>java -cp c:\dev\clojure.jar;.\src;.\classes clojure.lang.ReplClojure
user=> (compile 'test.test)
test.test
user=>
والملفات هي الفئة التي تم إنشاؤها في الدليل الطبقات.
لاحظ أيضا أن كنت في عداد المفقودين قوس الصحيح في حياتك <م> الرئيسية م>. النسخة المصححة:
(ns test.test
(:gen-class))
(defn -main
[gre]
(println (str "Hello " gre)))
نصائح أخرى
C:\clojrue\java -cp .\src;.\classes;clojure.jar
-Dclojure.compile.path=classes clojure.lang.Compile test.test