2012-05-28 1 views
5

유닉스 박스 (http://www.github.com/jhclark/ducttape)에서 제대로 빌드 된 프로젝트가 있습니다.OSX에서 스칼라 SBT/Maven2 오류 : "Zip 파일 열기 오류"-> MissingRequirementError

그러나 SBT 0.11.2 (및 기타 SBT 버전)를 사용하면 내 Mac (OSX 10.5)에 빌드되지 않습니다. 나는 다음과 같은 암호 같은 오류 메시지가 :

sbt clean clean-files 
rm -rf ~/.ivy2 ~/.m2 ~/.sbt 

나는 실제 오류가 SBT는 의존성 관리에 사용 Maven2에서 일어나고있는 것으로 의심 : 나는 철저하게 일을 청소 후에도

$ ~/bin/sbt compile          (master*? 20:11) 
[info] Loading project definition from /Users/jon/Documents/workspace- scala/ducttape/project 
[info] Set current project to ducttape (in build file:/Users/jon/Documents/workspace-scala/ducttape/) 
[info] Compiling 104 Scala sources to /Users/jon/Documents/workspace-scala/ducttape/target/scala-2.9.2/classes... 
[error] error while loading <root>, error in opening zip file 
[error] {file:/Users/jon/Documents/workspace-scala/ducttape/}default-024416/compile:compile: scala.tools.nsc.MissingRequirementError: object scala not found. 
[error] Total time: 2 s, completed May 27, 2012 8:12:09 PM 

발생합니다 (Maven : error in opening zip file when running maven 참조).

그러나 며칠 후에 나는 엉망이된다. 어떤 아이디어?

+0

SBT 받는다는하지, 의존성 관리를 위해 담쟁이를 사용합니다 (그러나 의존성이 받는다는의 repo에서 올 수) ... – Christian

답변

7

이전 버전의 sbt-extras 실행기를 sbt-0.11.3과 함께 사용하려고해도 비슷한 문제가있었습니다. 내 경우, 존재하지 않는 파일을 다운로드하려고 시도하고 404 오류 페이지의 압축을 풀려고했습니다. 최신 sbt-extras 실행 프로그램 has been fixed (sbt-0.11.3).

다른 소리는 있지만 the shutdown of scala-tools.org이 원인 일 수 있습니다. 가능한 경우 sbt-0.11.3으로 업그레이드하는 것이 좋습니다. 당신이 0.11.2 계속 사용이 필요한 경우

, 당신은 project/build.propertiessbt.version=0.11.2을 넣어 0.11.3-2 런처를 사용하고 build.sbtscalaTools REPO를 사용하지 않도록 설정해야합니다. Mark Harrah posted info은 SBT 메일 링리스트에 있습니다.

도움이되지 않는 경우, 어떤 이유로 든 손상된 .jar을 다운로드 중입니다.

find ~/.ivy2 ~/.m2 ~/.sbt -name "*.jar" -exec unzip -qqt {} \; 명령을 실행하여 손상된 jar를 찾으십시오. 손상된 항아리의 내용은 잘못된 점에 대한 단서를 제공 할 수 있습니다.

+0

이 솔루션은 너무 리눅스에서 유사한 문제를 해결합니다. 감사 데이브! – Gopinath

+0

이 테스트 압축 해제 명령은 내 문제를 해결합니다. 이런 종류의 문제는 truncated jar 파일 때문에 발생합니다. – hsc

2

완성을 위해 동일한 문제가 있었으며 손상된 zip/jar 파일이었습니다.

그러나 Dave의 명령 줄은 항아리가있는 일반적인 클래스 경로 디렉토리를 확인합니다.

나를 괴롭히는 원인 중 하나는 사실 내 프로젝트 ./lib 폴더에있었습니다. 나는 몇 시간 동안 이걸로 고생했다. 희망적으로 이것은 다른 누군가를 도울지도 모른다.

추신 : 감사합니다. Dave!

1

(OSX와 Scala 2.10.2에서) 동일한 문제가 있었지만, 내 종속성 관리자 repos 나 SBT 나 Scala (일부 사용자의 경우)에 문제가 없음이 밝혀졌습니다.

다른 이유로 라이브러리/Java/Home/lib/ext /에 JAR을 넣었지만 그룹 및 세계에서 읽을 수있는 형식이 아닙니다. root (소유자) 만 읽을 수 있습니다. 나는 허가를 쥐었고 짜잔. Scala와 SBT가 갑자기 다시 작동합니다.

cd /Library/Java/Home/lib/ext 
sudo chmod g+r bcprov-jdk15on-1.47.jar 
sudo chmod g+a bcprov-jdk15on-1.47.jar