سؤال

لسبب ما لا أستطيع الحصول على كلوجور ريبل العمل مع جلين ، ما فعلته كان جيت استنساخ مستودع كلوجور قبالة جيثب ثم تشغيل النمل لبنائه ، ثم تحميل جلين-0.9.94.جرة إلى الدليل مع كلوجور.جرة ، ثم قم بتشغيل الأمر التالي:

java -cp jline-0.9.94.jar:clojure.jar jline.ConsoleRunner clojure.main

والحصول على الأخطاء التالية:

    Exception in thread "main" java.lang.ClassNotFoundException: clojure.main
 at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:317)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
 at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:375)
 at java.lang.Class.forName0(Native Method)
 at java.lang.Class.forName(Class.java:164)
 at jline.ConsoleRunner.main(Unknown Source)

وهنا الملفات في بلدي الدليل الحالي:

vvshs-macbook-2:clojure vvsh$ ls
build.xml                                 clojure-sources-1.2.0-master-SNAPSHOT.jar epl-v10.html                              src
classes                                   clojure-sources.jar                       jline-0.9.94.jar                          test
clojure-1.2.0-master-SNAPSHOT.jar         clojure.iml                               pom-template.xml
clojure-slim-1.2.0-master-SNAPSHOT.jar    clojure.jar                               pom.xml
clojure-slim.jar                          doc                                       readme.txt
vvshs-macbook-2:clojure vvsh$ 

حصلت على نفس الخطأ على كلوجور 1.1 و لين ريبل (يبدو لين الحفاظ على نسختها الخاصة من كلوجور).

بالمناسبة ، هذا على ماك أوكس 10.5.8

java version "1.5.0_24"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_24-b02-357-9M3165)
Java HotSpot(TM) Client VM (build 1.5.0_24-149, mixed mode, sharing)

أي شخص يعرف ما هو الخطأ وكيفية إصلاحه?كما أريد حقا للحصول على لين ريبل العمل لبدء المشروع.

هل كانت مفيدة؟

المحلول

لقد حلت نفس المشكلة اليوم عن طريق إزالة زائدة عن الحاجة jline*.jar من عند /Library/Java/Extensions, ، وترك تركيب جلين واحد فقط في CLASSPATH.

شرح أطول: كنت أحاول بناء لابريبل, ، الذي يقوم بتثبيت جميع تبعياته في دليل فرعي lib, ولكن كنت قد وضعت سابقا جلين عن طريق نسخ .ملف جرة ل /Library/Java/Extensions. على ما يبدو, java.lang.ClassLoader لا يمكن التعامل مع اثنين من المنشآت من جلين ، وطالما كانت هناك تلك المتاحة في مكانين ، سطر الأوامر بدء كلوجور ريبل سوف تفشل في العثور على الأخير واحد من الطبقات jline.ConsoleRunner و clojure.main, ، اعتمادا على الترتيب الذي تم إعطاؤه لـ java الأمر.

آمل أن يساعد هذا.

نصائح أخرى

انظر بلدي تعليمات بديلة لتثبيت على بلدي شوكة:

http://github.com/jedschneider/leiningen

لقد أرسلت طلب سحب لتحديث الملف التمهيدي ، لكنني لم أحصل على رد عليه.بمجرد تثبيت لين ، يمكنك وضع bin/leiningen.sh في الخاص بك ~ / بن والذي يطلق عليه في أي مكان.أنا وضعت اختصار على بلدي .باش_الملف الشخصي

alias lein="~/bin/leiningen.sh"

ثم اتصل lein repl لإطلاق قذيفة

أيضا الخروج لابريبل الذي هو أداة تعليمية كبيرة.

http://github.com/relevance/labrepl

الخاص بك java ... يبدو الأمر جيدا، وسأتحقق مرة أخرى مما إذا كانت جميع الجرار في المكان الذي تعتقد أنه يجب أن تكون فيه (وأنهم كذلك ال الجرار التي تعتقد أنها كذلك ، أي. clojure.jar هو في الواقع واحد كنت بنيت محليا وليس بعض فائقة عفا عليها الزمن واحد).

إذا كنت ترغب في استخدام لينينجن ل lein repl, ، هذا ممكن أيضا.لاحظ أنه ليس من الدقيق القول أنه "يحافظ على نسخته الخاصة من كلوجور";لينينجن هو أداة البناء ، وتستخدم كجزء من سير العمل الموجهة نحو المشروع ، والجرار كلوجور منفصلة هي محددة للمشروع.لإنشاء مشروع عينة للعب حولها في ، ويقول lein new foo مكان مناسب.ثم ستحتاج إلى cd foo, ، احصل على برطمانات كلوجور ومساهمة بها lein deps (ال project.clj هيكل عظمي المقدمة من قبل lein new يحتوي بالفعل على إدخالات لكليهما) وابدأ في التكرار باستخدام lein repl.

أخيرا ، يمكنك استخدام الجديد cljr المشروع;أنه يحتوي على التمهيدي الشامل الذي يجب أن تحصل بدأت في أي وقت من الأوقات ، ومعها عليك أن تكون قادرا على القول cljr repl للحصول على كلوجور ريبل في أي مكان ، دون الحاجة إلى إنشاء "مشروع".

قابلت نفس المشكلة.يبدو jline.consolerunner (على الأقل حول JLE-0.9.5 التي أستخدمها) لا يمكن أن تكون قادرا على العثور على ملفات فئة في المسار المضافة إلى مسارات البحث الفئة من خيار "جافا".وهذا يعني أنه لا يمكن العثور على فئات في الدليل الحالي الخاص بك.لقد قمت بحل هذا عن طريق نسخ Clojure.main تحت / مكتبة / Java / Extensions / TOO.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top