2014-07-22 6 views
0

build.gradle 파일 위에있는 폴더에 저장된 gradle 종속성을 어떻게 참조 할 수 있습니까?프로젝트 위의 폴더에서 gradle 종속성

이 구문을 수정해야합니까? 내가 보는 모든 참조는

compile ':libs:thirdparty'

처럼 보이지만 이것은 내가 그래서 지금

갈거야 내 settings.gradle 파일이 시도했는지 정말 아니다

include ':app', ':android-volley' 

project(':android-volley').projectDir=new File('../../shared-components/android-volley') 

내가 안드로이드 발리 프로젝트를 링크하려고 할 때, 심하게 수정되어 메이븐 링크를 사용하면 좋지 않을 것입니다. 그리고이 프로젝트와 제가 작업하는 다른 프로젝트 사이에서이 파일들을 사용하고 싶습니다.

이 제대로 더 이상 "동기화"하고

<?xml version="1.0" encoding="UTF-8"?> 
<module external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" external.system.module.group="whosay" external.system.module.version="unspecified" type="JAVA_MODULE" version="4"> 
<component name="FacetManager"> 
    <facet type="android-gradle" name="Android-Gradle"> 
    <configuration> 
    <option name="GRADLE_PROJECT_PATH" value=":android-volley" /> 
    </configuration> 
</facet> 
<facet type="java-gradle" name="Java-Gradle"> 
    <configuration> 
    <option name="BUILD_FOLDER_PATH" /> 
    </configuration> 
</facet> 
</component> 
<component name="NewModuleRootManager" inherit-compiler-output="true"> 
<exclude-output /> 
<content url="file://$MODULE_DIR$"> 
    <excludeFolder url="file://$MODULE_DIR$/.gradle" /> 
    <excludeFolder url="file://$MODULE_DIR$/build" /> 
</content> 
<orderEntry type="inheritedJdk" /> 
<orderEntry type="sourceFolder" forTests="false" /> 
</component> 
</module> 

여기

.iml 파일을 안드로이드 스튜디오/IntelliJ에있는 종속성을 찾을 수 생성 할 수 없기 때문에 발리에 대한 가져 오기 문이 작동하지 않습니다 내 프로젝트를 허용하지 않습니다

무엇이 잘못 되었나요?

+0

당신이 일반적으로 모든 프로젝트를 포함하는 settings.gradle 파일을 사용하고 참조 것 – njzk2

+2

이것이 도움이됩니까? http://stackoverflow.com/questions/24658422/android-studio-0-8-1-creating-modules-without-copying-files/24659324#24659324 –

+0

당신은'lib에서 몇 개의 항아리를 얻고 싶습니다. '디렉토리를 컴파일 클래스 경로에 추가 하시겠습니까? –

답변

0

settings.gradle 파일을 열고 include:app이 표시되어야합니다. "앱"부분은 앱의 기본 모듈이지만 gradle 라이브러리를 추가하려는 경우 : "app"모듈이 저장된 위치와 동일한 위치에 lib 폴더를 추가 한 다음 settings.gradle 및 below로 이동하십시오 include:app, include:<your lib name here>을 입력하십시오. 그럼 gradle 파일을 동기화하고 당신이 잘 가야한다. app 모듈과 lib 모듈이 동일한 android 버전과 sdk 버전을 사용하고 있는지 확인하십시오.

뭔가 같은 :

dependencies { 
    compile project(path: ':android-volley') 
} 
+0

의도적으로 내 일반적으로 사용되는 (및 수정 된) 라이브러리를 외부 폴더에 넣어 다른 응용 프로그램에서 복사하지 않고 사용할 수 있으므로 Maven이나 Git 하위 모듈을 만들지 않아도됩니다. 가난한 솔루션과 마찬가지로이 솔루션이 유일한 솔루션입니까? – CQM

+0

제 지식으로, 그렇습니다. 이런 식으로 설정하는 것이 정말 쉽다는 것을 알았습니다. –

0

아마 당신은 응용 프로그램 build.grade 파일에 종속성을 추가하는 것을 잊었다 라이브러리는 직접 기본 프로젝트의 build.gradle 파일에 있습니다. (`compile project (': mylibrary')`)
관련 문제