Gradle 빌드를 사용하여 IntelliJ IDEA에서 Gradle 종속성 가져 오기


140

IntelliJ IDEA 내부에서도 등급 빌드는 "외부 라이브러리"폴더에 종속성을 두지 않으므로 이러한 클래스는 편집기에서 제안으로 표시되지 않으며 가져 오기로 수동으로 추가 할 때 컴파일 오류가 발생합니다.

예를 들어 IntelliJ가 build.gradle 파일에 종속성을 자동으로 통합하는 방법은 다음과 같습니다.

compile 'com.google.code.gson:gson:1.7.2


2
프로젝트를 gradle 프로젝트로 가져오고 gradle 지원이 활성화되어 있는지 확인하십시오.
M. Deinum

답변:


192

Idea 내에서 프로젝트를 Gradle 프로젝트로 가져와야합니다. 종속성을 추가 할 때 Gradle 창을 열고 새로 고침을 수행해야합니다.

또는 다음과 같이 gradle에서 프로젝트 파일을 생성하십시오.

build.gradle :

apply plugin: 'idea'

그런 다음 다음을 실행하십시오.

$ gradle idea

종속성을 수정하면 위의 내용을 다시 실행해야합니다.


apply plugin: 'idea'어떤 경우에도 추가해야합니다.
Peter Niederwieser 2014

@PeterNiederwieser-Idea에서 가져 오기를 수행하는 경우 어떤 효과가 있습니까?
tddmonkey

가져 오기를 통해 IntelliJ 설정의 다양한 측면 (예 : 사용할 JDK)을 구성 할 수 있습니다. 빌드에 그러한 구성이 없으면 플러그인을 적용하지 않아도 될 수 있습니다 (필자는 시도하지 않았습니다).
Peter Niederwieser

덕분에, 좋은 내가 독점적 그래서이 할 필요가 없다 나를 위해 프로젝트 파일을 생성 할 수 Gradle을 사용, 알고
tddmonkey

플러그인을 적용하는 것이 선택 사항이 아닌 것을 제외하고는 프로젝트 파일을 생성 할 때도 마찬가지입니다.
Peter Niederwieser

189

종속성을 추가 한 후 "Gradle"( '보기'-> 도구 창-> Gradle) 탭을 열고 "새로 고침"을 누르십시오.

추가 예 ( 'io.reactivex : rxjava : 1.1.0'컴파일) :

새로 고침

Idea가 여전히 종속성을 해결할 수없는 경우 종속성이 mavenCentral () 저장소에 있지 않을 수 있으며이 종속성이 저장소에있는 저장소를 추가해야합니다 {}


13
그러나 작동하지 않는 것 같습니다. 종속성을 추가하고 새로 고쳤지만 라이브러리를 XML 또는 Java 소스 코드로 가져 오려고하면 IDEA가이를 해결할 수 없습니다.
AuBee

3
나를 위해 일했다. 고맙게도 아이디어 gradle 플러그인을 사용하지 않아도됩니다.
gMale

2
@ Aubee : 나는 같은 문제가 있었다. 커맨드 라인에서 Gradle을 사용하여 (한 번만) 빌드하면 사라졌습니다.
Thomas

@ 토마스 예. CLI는 항상 더 많은 제어 기능을 제공합니다
Andrey

@AuBee 아이디어가 의존성을 해결할 수 없다면, 아마도 의존성이 mavenCentral () 저장소에 있지 않으며 저장소에 저장소를 추가해야합니다. {}
Andrey

20

기존 Gradle 프로젝트 (가있는 프로젝트 build.gradle)를 IntelliJ IDEA로 가져올 때 다음 화면이 표시되면 외부 모델 에서 가져 오기 -> Gradle을 선택하십시오 .

외부 모델에서 프로젝트 가져 오기

선택적 으로 다음 화면에서 자동 가져 오기 를 선택 하여 새 종속성을 자동으로 가져옵니다.


3
실제로이 답변은 내 문제를 해결했으며 위의 실제 정답보다 먼저해야합니다.
quickinsights

3
이것은 실제로 작동하고 올바른 유일한 솔루션입니다. 아이디어를 위해 gradle.properties에 무언가를 추가하는 것은 명백한 잘못입니다.
user219882

원래 가져 오기에서이 단계를 수행하지 않고 구문 강조 및 자동 완성 기능을 전혀 사용할 수 없었습니다. 다시 가져 오지 않고 문제를 해결할 수 있지만 최소한 작은 프로젝트에서는 훨씬 쉽습니다.
Ed Norris

@ user219882-왜 "평범한"빌드에 무언가를 추가하고 있습니까?
tddmonkey

사용자가 사용하기로 선택한 IDE가 빌드 방법을 설명하는 것과 관련이 없기 때문에 @tddmonkey.
Qix-모니카가

11

"종속성을 해결할 수 없음"오류가 발생하는 경우 :
"오프라인 모드"를 끄십시오
( '보기'-> 도구 창-> 그래들)

gradle 창


5

Andrey의 위 게시물은 2017 년 3 분기 기준으로 최신 Intellij 버전에 계속 유효합니다. 따라서 사용하십시오. '원인, 빌드 프로젝트 및 외부 명령 줄 gradle 빌드는 Intellij의 외부 종속성에 추가하지 않습니다. 차이점은 UI가 위와 다르게 보이지만 여전히 동일한 업데이트 아이콘이 사용된다는 것입니다. 나는 단지 여기에 답을하고 있는데, 나는 새로운 UI의 스냅 샷을 붙여 넣을 수 없기 때문에 ... 나는 그 자체로 투표를 원하지 않는다. Andrey는 여전히 위의 정답을 제시했습니다. 여기에 이미지 설명을 입력하십시오


1

필자의 경우, gradle ( '보기'-> 도구 Windows-> Gradle) 탭을 새로 고치는 동안 오류가 발생하고 "새로 고침"을 누르고 클래스 jetgradleplugin에 대한 속성 gradleversion이 오류가 발생하지 않습니다.

gradle 5 이상과 호환되는 최신 IntelliJi를 설치해야했습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.