development

Android Studio에서 링크 된 소스 폴더를 추가하는 방법은 무엇입니까?

big-blog 2020. 12. 4. 19:43
반응형

Android Studio에서 링크 된 소스 폴더를 추가하는 방법은 무엇입니까?


Eclipse에서 소스 폴더를 내 안드로이드 프로젝트에 "링크 된 소스 폴더"로 추가 할 수 있습니다. Android Studio에서 동일한 작업을 수행하려면 어떻게해야합니까?

아니면 gradle에서 빌드하기 위해 외부 폴더를 추가 할 수 있습니까?


build.gradle에서 android 노드 끝에 다음을 추가하십시오.

android {
    ....
    ....

    sourceSets {
        main.java.srcDirs += 'src/main/<YOUR DIRECTORY>'
    }

}

정답은 다음과 같습니다.

android {
    ....
    ....

    sourceSets {
        main.java.srcDirs += 'src/main/<YOUR DIRECTORY>'
    }
}

또한 외부 소스 디렉토리가 아래 src/main있지 않은 경우 다음 과 같은 상대 경로를 사용할 수 있습니다.

sourceSets {
    main.java.srcDirs += 'src/main/../../../<YOUR DIRECTORY>'
}

빌드 스크립트에 소스 폴더를 추가 한 다음 동기화 할 수 있습니다. http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Basic-Project 문서에서 sourceSets를 찾으십시오.

테스트 소스 폴더를 추가하는 좋은 방법을 찾지 못했습니다. .iml 파일에 소스를 수동으로 추가했습니다. 물론 이것은 빌드 스크립트가 동기화 될 때마다 사라진다는 것을 의미합니다.


sourceSets전체 디렉터리 구조를 포함 할 수 있지만 여기에 설명 된대로 Android Studio (버전 1.2 기준)에서 일부를 제외 할 수있는 방법은 없습니다. Android Studio 빌드에서 클래스 제외?

Android 소스에 대한 include / exclude 지시문을 지원하도록 Android Studio가 업데이트 될 때까지 Symlink는 매우 잘 작동합니다. Windows를 사용하는 경우 junction또는 같은 기본 도구 mklink는 Un * x 심볼릭 링크와 동등한 기능을 수행 할 수 있습니다. CygWin 은 또한 약간의 강제로 이것을 만들 수 있습니다. 참조 : Windows의 Git SymlinksWindows 7에서 cygwin을 사용하여 심볼릭 링크를 만드는 방법


누구나 관심이있는 경우 Android 다중 모듈 애플리케이션 내에서 빌드 된 아티팩트를 올바르게 생성하고 참조하는 완전한 Java 모듈 gradle 파일이 있습니다.

buildscript {
    repositories {
        maven {
            url "https://plugins.gradle.org/m2/"
        }
    }
    dependencies {
        classpath "net.ltgt.gradle:gradle-apt-plugin:0.15"
    }
}

apply plugin: "net.ltgt.apt"
apply plugin: "java-library"
apply plugin: "idea"

idea {
    module {
        sourceDirs += file("$buildDir/generated/source/apt/main")
        testSourceDirs += file("$buildDir/generated/source/apt/test")
    }
}

dependencies {

    // Dagger 2 and Compiler
    compile "com.google.dagger:dagger:2.15"
    apt "com.google.dagger:dagger-compiler:2.15"
    compile "com.google.guava:guava:24.1-jre"

}

sourceCompatibility = "1.8"
targetCompatibility = "1.8"

Gradle을 사용하지 않는 경우 (예 : APK에서 프로젝트 생성) Android 스튜디오 UI (버전 3.3.2 기준)를 통해이 작업을 수행 할 수 있습니다.

  • 프로젝트 루트 디렉토리를 마우스 오른쪽 버튼으로 클릭하고 Open Module Settings
  • Hit the + Add Content Root button (center right)
  • Add your path and hit OK

In my experience (with native code), as long as your .so's are built with debug symbols and from the same absolute paths, breakpoints added in source files will be automatically recognized.

참고URL : https://stackoverflow.com/questions/18947314/how-to-add-a-linked-source-folder-in-android-studio

반응형