SBT는 로컬 Maven 저장소에서 파일을 찾지 못합니다.
내 로컬 저장소에있는 maven 종속성에 문제가 있습니다.
SBT가 찾을 수 없습니다. 이미 로그 수준을 디버그로 설정했지만 새로운 것은 없습니다.
파일은 저장소에 있습니다. 콘솔에서 파일 탐색기로 붙여 넣기 경로를 복사하면 거기에 있습니다.
출력 :
[debug] trying file://c:/Users/userz/.m2/repository/com/twitter/naggati/2.0.0/naggati-2.0.0.pom
[debug] tried file://c:/Users/userz/.m2/repository/com/twitter/naggati/2.0.0/naggati-2.0.0.pom
[debug] Local Maven Repository: resource not reachable for com/twitter#naggati;2.0.0: res=file://c:/Users/userz/.m2/repository/com/twitter/naggati/2.0
.0/naggati-2.0.0.pom
[debug] trying file://c:/Users/userz/.m2/repository/com/twitter/naggati/2.0.0/naggati-2.0.0.jar
[debug] tried file://c:/Users/userz/.m2/repository/com/twitter/naggati/2.0.0/naggati-2.0.0.jar
[debug] Local Maven Repository: resource not reachable for com/twitter#naggati;2.0.0: res=file://c:/Users/userz/.m2/repository/com/twitter/naggati/2.0
.0/naggati-2.0.0.jar
[debug] Local Maven Repository: no ivy file nor artifact found for com.twitter#naggati;2.0.0
편집 : http://code.google.com/p/simple-build-tool/wiki/LibraryManagement에 설명 된 것처럼 프로젝트 / 빌드에서 scala 파일을 사용하여 경로를 추가 했습니다 .
"sbt는 저장소로 추가하면 로컬 Maven 저장소를 검색 할 수 있습니다."
val mavenLocal = "Local Maven Repository" at "file://"+Path.userHome+"/.m2/repository"
그것은 sbt를 로컬 저장소에서 보았습니다. 그 전에.
따라서 스칼라 파일은 다음과 같습니다.
import sbt._
class Foo(info: ProjectInfo) extends DefaultProject(info) {
val mavenLocal = "Local Maven Repository" at "file://c:/Users/userz/.m2/repository"
}
(가능한 오류 이유를 제외하기 위해 Path.userHome을 하드 코딩했습니다. 예상대로 아무것도 변경하지 않았습니다).
file:
지정자 뒤에 세 개의 슬래시가 필요 합니다. 두 번째와 세 번째 슬래시 사이에 선택적 호스트 이름이 있기 때문입니다. Wikipedia 에는 file:
URL에 대한 좋은 설명이 있습니다.
의 일반적인 패턴은 "file://"+Path.userHome+"/.m2/repository"
경로가로 시작 /
하고 no를 포함 :
하며 일반적으로 공백이없는 Unix 파일 시스템 을 가정 하기 때문에 문제 가 있습니다.
Windows 및 Linux / Unix 모두에서 작동하는 비 하드 코딩 경로를 가지려면 다음을 사용하십시오.
"Local Maven" at Path.userHome.asFile.toURI.toURL + ".m2/repository"
build.scala 또는 build.sbt 파일에이 줄을 추가하면됩니다.
resolvers += Resolver.mavenLocal
최신 버전의 sbt에서이 작업을 수행하려면 build.sbt에 다음을 추가하십시오.
resolvers += "Local Maven Repository" at "file:///"+Path.userHome+"/.m2/repository"
프로젝트를 정의한 경우 설정에 해결 프로그램을 포함해야합니다. 글로벌 리졸버는 식별되지 않습니다.
예:
lazy val core = (project in file("core")).
settings(commonSettings: _*).
settings(
resolvers += Resolver.mavenLocal,
name := "Core",
libraryDependencies := coreDependencies
)
'Programing' 카테고리의 다른 글
matplotlib 막대 차트에 값 레이블 추가 (0) | 2020.11.01 |
---|---|
각 단어의 첫 글자를 얻다 (0) | 2020.10.31 |
Java에서 개체 복제 (0) | 2020.10.31 |
IE8에서 JavaScript 변수를 어떻게 덤프합니까? (0) | 2020.10.31 |
iOS : 앱을 설치하는 동안 앱이 사용자의 권한을 요청하지 않습니다. (0) | 2020.10.31 |