2014-04-23 4 views
0

*directory-string*의 경로를 텍스트 파일이 포함 된 드롭 박스로 변경하는 동안 https://github.com/herdrick/hierarchical-text/blob/master/src/hierarchical-classifier.clj을 구현하려고했습니다. 컴파일러 예외가 org.apache.commons.io.FileUtils/listFiles에 대해 java.lang.ClassNotFoundException 인 REPL에서 발행되었습니다. 당신이 시각화/디렉토리가 있는지 확인, 시각이 나무를 보려면 : Clojure 라이브러리 구현

링크에서 소스 코드뿐만 아니라 난 후 다음과 같은 메모를했다
(def clustered (cluster *txt-files*)) 

을 추가했습니다.

(def json (.replace (pof->js clustered 3) "/path/to/documents/" "")) 
;;I have left the path to documents here for generality, the path is fully specified in my text editor 
;;removing the dir path to each file keeps everything much cleaner. 
(write-protovis-file json) 

clustered*txt-files*

(def *txt-files* (seq (org.apache.commons.io.FileUtils/listFiles (new java.io.File *directory-string*) nil false))) 
을 포함한다 : 그런 다음 시각화/protovis-3.2/flare.js에 전체 경로로 protovis.clj에 protovis-JSON 파일 변경

은 컴파일러 예외를 일으키는 부분입니다.

org.apache에 대한 컴파일러 예외를 제거하는 방법을 잘 모르겠다 ... "이 트리를 시각화하려면/시각화/dir이 있는지 확인하십시오. 변경 protovis-json- protovis.clj의 파일이 visualize/protovis-3.2/flare.js의 경로가되어야하고 "각 파일의 경로를 제거하면 모든 것이 훨씬 깨끗하게 유지됩니다."라는 것이 분명하지 않습니다. 누군가이 구현에서 어떤 일이 일어나는지를 설명 할 수 있습니까?

답변

1

당신은 당신에 apache.commons.io의 MVN 종속성을 추가해야합니다은 다음 project.clj에 벡터 종속성 :

[org.apache.commons/commons-io "1.3.2"] 또한

는,이 코드는 개념 증명 (즉 수 라이브러리에 만들어지지 않음), 파일에는 하드 코딩 된 경로가 있다는 사실에 의해 표시되는 라이브러리가 아니라 하드 코딩 된 값에 따라 파일로드 시간에 부작용이 발생합니다.

관련 문제