View
Ant 와 Ivy를 통해서 Java로 작성된 Open Source를 반영하던 중 특정 Jar 파일에 대한 dependency lock으로 인해 빌드가 더 이상 진행되지 않는 현상이 발생했다. 이는 공통 빌드 서버에서 Apache Solr에 대한 배포작업 (ant deploy)과 바이너리 패키지 작업(ant package)를 진행하던 중 발생한 것으로 동일한 jar파일에 대해 접근하려고 하다가 dead lock이 발생한 것으로 보였다.
NOTE: If your build hangs when building and especially on a "resolve" step, it's probably because there are left over lock files in your ivy directory (often because you crtl-c'd during a build). To fix this navigate to your .ivy2 directory and delete all of the "*.lck" files in the tree. For *nix operating systems, issue a command similar to: find . -name "*.lck" | xargs rm
위와 같이 solr build 메뉴얼에서 잘 설명해 주었는데 ' find . -name "*.lck" '명령으로 파일을 찾은 다음, *.lck 파일을 삭제해 주면 된다.
(혹시 관련 없는 파일이 있을 수 있으니 처음 실행 시에는 | xargs rm 명령은 수행하지 않도록 하자)
하지만 위에서 말하는 '.ivy2' 디렉토리가 어디에 있는지 도통 알기 어려웠다. 확인결과 사용하고 있는 계정의 home dir에 존재하였다(cd ~). 실제 Jenkins의 working directory에 생성될 것으로 판단하였지만 사용계정의 home에 생성되어 약간 리스크가 있을 것으로 생각되었다.
위 명령을 통해 *.lck 파일을 삭제한 뒤 정상적으로 build 를 수행할 수 있었다.
'02.IT공부(간헐적취미) > IT뉴스' 카테고리의 다른 글
[끄적끄적] web 훑어보기 (0) | 2018.04.03 |
---|---|
[끄적끄적] Apache Storm, Hbase, 빅데이터 보안, Flume&Kafka (0) | 2017.12.28 |
[Python] Centos-6 에서 최신 Python 모듈 사용하기 (0) | 2017.11.08 |
[Eclipse] 이클립스 정상 실행 안되는 경우 (0) | 2017.09.24 |
[VM] Virtual Box GUI 없이 구동하기 (run virtual box without GUI screen) (0) | 2017.08.12 |