Clojure에서 웹 응용 프로그램을 작성하는 데 필요한 여러 자습서를 따르려고했지만 동일한 문제가 계속 발생합니다. 가장 간단한 경우를 이용하려면,이 튜토리얼 다음 시도 : http://drtom.ch/posts/2012-12-10/An_Introduction_to_Webprogramming_in_Clojure_-_Ring_and_Middleware/Clojure 링 서버가 slf4j에 의존하지 않는 것 같습니다.
내가 서버를 시작하는 단계에 도착하면 (실행 - 부두 핸들러 {: 포트 8383}), 나는 다음과 같은 오류 얻을 :
NoSuchMethodError를 org.slf4j.helpers.MessageFormatter.arrayFormat (Ljava/lang/String; [Ljava/lang/Object]) Lorg/slf4j/helpers/FormattingTuple; org.eclipse.jetty.util.log.JettyAwareLogger.log (JettyAwareLogger.java:613)
lien에게 클래스 경로를 보여줄 것을 요청했는데, 물론 org.slf4j.helpers.MessageFormatter가 그곳에 없습니다. .
저는 거의 모든 링 기반 웹 튜토리얼에서 이걸 시험해 보았습니다. 그래서 나는 이상한 구성을 가지고있었습니다. (나는 업데이트하고 다시 설치했는데, ~/.m2를 다시 불었습니다. 등), 또는 무언가가 클래스 패스를 만들기 위해 함께 사용되는 수많은 의존성에서 변경되었습니다.
여기에 어떤 아이디어가 있습니까?
편집
I 추가 정보가있어 - 내가, 버추얼 박스에서 VM을 생성 오픈 JDK 및 lein를 설치하고,이 프로젝트를 만들었습니다. 괜찮 았어. 호스트와 공유하는 디렉토리에이 디렉토리를 만들었으므로 호스트에서 동일한 디렉토리에 "lein 링 서버"를 설치하려고 시도했지만 위의 오류로 인해 실패했습니다.
그래서 저는 VM과 호스트 모두에서 "클래스 패스"를 수행하고 결과를 비교했습니다. 그것들은 동일합니다. 또한 같은 JVM (OpenJDK 64 비트 빌드 24.51-b03)의 동일한 빌드를 실행하고 있는지 확인했습니다.
그렇다면 동일한 클래스 경로를 사용하여 동일한 JVM을 실행중인 경우 남은 것은 무엇입니까?
를 튜토리얼은 매우 오래된 것이다. Clojure의 최신 버전 (예 : 1.5.1 이상)과 현재 버전의 링 (예 : 1.2.2)에서이 기능을 사용해 보셨습니까? –
나는 ring, luminus, compojure, noir를 위해 6 가지 다른 튜토리얼을 시도했다 ... 나는 계속 같은 문제에 부딪쳤다. – scottb
project.clj 파일을 포함하여 작업중인 종속성을 표시 할 수 있습니까? – GregA100k