openjar-cli은(는) 무엇을 하나요?
로컬 Maven/Gradle 코드 인덱스를 터미널에서 직접 조회할 수 있는 CLI 도구입니다.
개요
openjar-cli는 로컬 Maven 및 Gradle 빌드 시스템이 생성한 의존성 코드 인덱스를 쿼리하기 위한 명령줄 인터페이스입니다. IDE를 열지 않고도 라이브러리, 클래스, 메서드 등의 정보를 빠르게 찾을 수 있습니다.
주요 기능
- 의존성 검색: 로컬 캐시에서 특정 아티팩트(groupId:artifactId)를 검색합니다.
- 클래스 탐색: 특정 클래스가 속한 JAR 파일이나 모듈을 확인합니다.
- 소스 링크: 인덱싱된 소스 경로를 기반으로 직접 파일 위치를 제공합니다.
- 빌드 도구 지원: Maven 및 Gradle 인덱스를 모두 지원합니다.
설치
npm install -g openjar-cli
# 또는
# 직접 빌드:
git clone https://github.com/tainn03/openjar-cli.git
cd openjar-cli
npm install && npm run build
사용 방법
기본 명령어
# 인덱스 업데이트 (로컬 리포지토리 스캔)
openjar update
# 특정 아티팩트 검색
openjar search com.google.guava:guava
# 클래스 경로 확인
openjar classpath com.example.MyClass
# 인덱싱된 모든 아티팩트 목록
openjar list
고급 사용 예시
# 와일드카드 검색
openjar search *:my-library
# 특정 그룹 내 모든 아티팩트 확인
openjar search com.example:*
# JAR 파일 상세 정보
openjar info com.example:my-library:1.0.0
설정
openjar-cli는 기본적으로 Maven ~/.m2/repository와 Gradle ~/.gradle/caches 디렉토리를 자동으로 감지합니다. 환경 변수를 통해 사용자 정의 경로를 설정할 수 있습니다:
export OPENJAR_MAVEN_REPO=/custom/maven/path
export OPENJAR_GRADLE_CACHE=/custom/gradle/path
빌드 도구 지원 상세
| 빌드 도구 | 인덱스 경로 | 자동 감지 |
|---|---|---|
| Maven | ~/.m2/repository | 예 |
| Gradle | ~/.gradle/caches | 예 |
| 기타 | 환경 변수 설정 필요 | 아니오 |
문제 해결
- 인덱스가 비어 있는 경우:
openjar update를 실행하여 인덱스를 강제로 갱신하세요. - 라이브러리를 찾을 수 없는 경우: 빌드 도구 의존성이 실제로 다운로드되었는지 확인하세요.
- 권한 오류: 캐시 디렉토리에 대한 읽기 권한이 있는지 확인하세요.
라이선스
이 프로젝트는 MIT 라이선스를 따릅니다. 자세한 내용은 LICENSE 파일을 참조하세요.