Nice programing

Android Studio : jar를 라이브러리로 추가 하시겠습니까?

nicepro 2020. 9. 27. 14:01
반응형

Android Studio : jar를 라이브러리로 추가 하시겠습니까?


새로운 Android Studio를 사용하려고하는데 제대로 작동하지 않는 것 같습니다.

Gson 라이브러리를 사용하여 JSON 개체를 직렬화 / 역 직렬화하고 있습니다. 그러나 라이브러리는 어떻게 든 빌드에 포함되지 않습니다.

MainActivity 만 사용하여 새 프로젝트를 만들었습니다 . / libs 폴더에 gson-2.2.3.jar복사 하여 라이브러리 종속성 으로 추가했습니다 (오른쪽 클릭-> 라이브러리로 추가). 여기에는 android studio의 jar가 포함되어 있으므로 소스 파일에서 참조 할 수 있습니다.

프로젝트를 실행하려고 할 때 컴파일 할 수 없으므로 다음을 추가했습니다.

compile files('libs/gson-2.2.3.jar')

de .gradle 파일의 종속성. 그 후 올바르게 컴파일되지만 응용 프로그램을 실행할 때 ClassDefNotFoundException.

내가 뭘 잘못하고 있는지 아는 사람이 있습니까?


나는 Gson 병이 덜 작동하도록 노력하면서 여러 시간 동안 똑같은 일로 고심했습니다. 나는 마침내 그것을 깨뜨렸다 – 내가 취한 단계는 다음과 같다.

  1. Gson jar (제 경우에는 gson-2.2.4.jar)를 libs폴더에 넣으십시오.
  2. 그것을 마우스 오른쪽 버튼으로 클릭하고 '라이브러리로 추가'를 누르십시오.
  3. 파일 compile files('libs/gson-2.2.4.jar')있는지 확인하십시오 build.gradle(또는 compile fileTree(dir: 'libs', include: '*.jar')많은 jar 파일을 사용중인 경우).

    편집 : Android Studio 3.0 이상에서 사용 implementation files('libs/gson-2.2.4.jar')(또는 implementation fileTree(dir: 'libs', include: '*.jar'))

  4. 클린 빌드를 수행합니다 (Android Studio에서이 작업을 수행 할 수 있지만 터미널에서 내 앱의 루트 폴더로 이동하고를 입력했는지 확인하기 위해 gradlew clean. 저는 Mac OS X에 있습니다. 시스템에서 명령이 다를 수 있음)

위의 네 가지 작업을 수행 한 후 제대로 작동하기 시작했습니다. '라이브러리로 추가'단계는 이전에 놓쳤던 단계였으며 정리할 때까지 작동하지 않았습니다.

[편집- build.gradle다른 사람들이 지적했듯이 필요한 단계 추가 ]


다음은 모듈에 로컬 jar 파일을 라이브러리로 추가하는 방법입니다.

  1. 모듈 디렉토리의 최상위 레벨 ( 'src'디렉토리를 포함하는 동일한 디렉토리)에 'libs'폴더를 만듭니다.

  2. 에서 build.gradle file추가 소위 의존성 폐쇄가 가지고있는 다음과 같은 :

    dependencies {
        // ... other dependencies
        compile files('libs/<your jar's name here>')
    }
    
  3. Android Studio는 이미 gradlew 래퍼를 설정해야합니다. 명령 줄에서 프로젝트의 최상위 수준 ( gradlew파일 이있는 디렉터리 )으로 이동합니다.

    을 실행 ./gradlew assemble합니다. 라이브러리와 함께 프로젝트를 컴파일해야합니다. 필요에 따라 build.gradle 파일의 오류를 수정해야 할 수 있습니다.

  4. Android 스튜디오가 IDE에서 코딩하는 동안 로컬 jar 파일을 지원을위한 라이브러리로 인식하게하려면 몇 가지 단계를 더 수행해야합니다.

    4.1. 왼쪽 패널에서 모듈을 마우스 오른쪽 버튼으로 클릭하고을 선택합니다 Open Library Settings.

    4.2. 대화 상자의 왼쪽 패널에서을 선택합니다 Libraries.

    4.3. +왼쪽에서 두 번째 패널 위 기호를 클릭하십시오 ->Java

    메뉴

    4.4. 로컬 jar를 선택하고 프로젝트에 추가하십시오.

  5. 위의 ./gradlew명령을 한 번 더 실행해야 할 수도 있습니다.


프로젝트에서 오른쪽 클릭

-> new -> module
-> import jar/AAR package
-> import select the jar file to import
-> click ok -> done

아래 스크린 샷을 따르십시오.

1:

1 단계

2 :

여기에 이미지 설명 입력

삼:

여기에 이미지 설명 입력

다음과 같이 표시됩니다.

여기에 이미지 설명 입력


Android Stuido에서는 Gradle을 사용하여 Gson lib를 관리하는 것을 좋아합니다.

build.gradle 파일에 아래 종속성을 추가하십시오.

repositories {mavenCentral()}

dependencies {compile 'com.google.code.gson:gson:2.2.4'}

모든 것이 괜찮습니다.

이 게시물도 볼 수 있습니다. Android 스튜디오에서 타사 라이브러리를 통합하는 가장 좋은 방법


IIRC, 단순히 "라이브러리로 추가"를 사용하는 것만으로는 프로젝트와 함께 컴파일 할 수 없습니다.

프로젝트에 라이브러리 추가에 대한 Intellij의 도움말 확인

가장 관심을 가져야 할 부분은 다음과 같습니다.

(에서 File > Project Structure) 모듈 설정을 열고 종속성 탭을 선택합니다.

종속성 탭에서 추가를 클릭하고 라이브러리를 선택하십시오.

라이브러리 선택 대화 상자에서 하나 이상의 라이브러리를 선택하고 선택 항목 추가를 클릭합니다.

라이브러리가 대화 상자에 표시되지 않으면 모듈 바로 아래의 라이브러리 설정에 추가하십시오.

compile files()더 이상 추가 할 필요가 없으며 라이브러리가 프로젝트에 제대로 추가되어야합니다.


이러한 모든 솔루션은 구식입니다. 이제 Android Studio에서 정말 쉽습니다.

파일> 새 모듈 ...

다음 화면이 이상하게 보입니다. 위젯이나 무언가를 선택하지만 첫 번째 그림에 유지하고 스크롤 아래에서 "Import JAR 또는 .AAR Package"를 찾습니다.

그런 다음 걸릴 Project Structure파일 menu.Select에서 app선택한 다음 열린 창에서 dependencies다음을 눌러을 green plus button선택한 module dependency다음을 눌러 다음 가져 오기 모듈을 선택OK


Android Studio 에서 외부 라이브러리를 추가하는 쉬운 단계

  1. 프로젝트 탐색기 에서 Android View에 있는 경우 아래와 같이 Project view로 변경 합니다.

여기에 이미지 설명 입력

  1. 외부 라이브러리를 추가하려는 모듈을 마우스 오른쪽 버튼으로 클릭 한 다음 새로 만들기> Directroy 를 선택 하고 이름을 ' libs '로 지정합니다.
  2. 이제 blah_blah.jar 을 ' libs '폴더에 복사하십시오.
  3. blah_blah.jar를 마우스 오른쪽 버튼으로 클릭 한 다음 ' 라이브러리로 추가 .. '를 선택합니다. 그러면 자동으로 build.gradle컴파일 파일 ( 'libs / blah_blah.jar')추가 및 항목이 추가되고 gradle이 동기화됩니다. 그리고 당신은 끝났습니다

참고 : 타사 라이브러리를 사용 하는 경우 Gradle 스크립트가 실행될 때 Gradle 스크립트가 JAR 및 종속성 JAR을 자동으로 다운로드하는 종속성 을 사용하는 것이 좋습니다 .

예 : 'com.google.android.gms : play-services-ads : 9.4.0'컴파일

Gradle 종속성 관리 에 대해 자세히 알아보기


'파일 컴파일 ...'은 저를 위해 일했지만 더 이상은 아닙니다. 많은 고통 끝에 이것을 대신 사용하면 효과가 있음을 알았습니다.

compile fileTree(dir: 'libs', include: '*.jar')

왜 그게 차이가 났는지 모르겠지만 적어도 지금은 제대로 작동하고 있습니다.


  1. 웹 사이트에서 라이브러리 파일 다운로드
  2. Windows 탐색에서 복사
  3. 프로젝트 탐색기에서 lib 폴더에 붙여 넣기
  4. Ctrl+ Alt+ Shift+ S프로젝트 구조 열기
  5. 종속성 탭을 선택하고 +를 사용하여 파일을 추가하십시오.
  6. 도구 모음 버튼을 사용하여 프로젝트를 gradle 파일과 동기화

그것은 내 문제를 해결했습니다. 더 자세한 정보를 원하는 사람이 있으면 알려주세요.


build.gradle에 한 줄을 추가하여 작동하도록 만들었습니다.

 dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar']) ----> AS creates this
    implementation 'com.google.code.gson:gson:2.3.1'   ----------> I added this one
    }

오른쪽 상단에있는 "지금 동기화"를 클릭하는 것을 잊지 마십시오.

Android Studio 1.0.1을 사용하고 있습니다.


Android Studio의 Dependency Manager는 타사 종속성 (여기에 언급 된 gson과 같은)을 관리하는 데 매우 편리하고 강력하다는 것을 알았습니다. 나를 위해 일한 단계별 가이드 제공 (참고 :이 단계는 Windows 플랫폼의 Android Studio 1.6 이상 버전에서 테스트되었습니다).

1 단계 : "Build> Edit Libraries and Dependencies ..."로 이동하면 "Project Structure"대화 상자가 열립니다.

여기에 이미지 설명 입력

2 단계 : "앱"을 선택한 다음 "종속성"탭을 선택합니다. 그런 다음 "추가> 1 라이브러리 종속성"을 선택하십시오.

여기에 이미지 설명 입력

3 단계 : "라이브러리 종속성 선택"대화 상자가 표시되면 검색에서 "gson"을 지정하고 "검색 버튼"을 누릅니다.

여기에 이미지 설명 입력

4 단계 : 원하는 종속성이 검색 목록에 표시되고 com.google.code.gson : gson : 2.7을 선택한 다음 (답을 작성할 당시의 최신 버전입니다) 확인을 누릅니다.

여기에 이미지 설명 입력

"프로젝트 구조"대화창에서 확인을 누르십시오. Gradle은 그에 따라 빌드 스크립트를 업데이트합니다.

여기에 이미지 설명 입력

이것이 도움이되기를 바랍니다. :)


1. jar (제 경우에는 gson-2.2.4.jar)를 libs 폴더에 넣습니다.

2. 컴파일 파일 ( libs/gson-2.2.4.jar)이 build.gradle 파일에 있는지 확인 합니다.

3. 이제 "Sync Project with Gradle files"(왼쪽 상단 표시 줄의 AVD 관리자 버튼)를 클릭합니다.

위의 세 가지를 수행 한 후 제대로 작동하기 시작했습니다.


폴더에 .jar파일을 다운로드 및 복사 libs한 다음 build.gradle에 다음 줄을 추가합니다.

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.google.code.gson:gson:2.3.1'
}

"지금 동기화"를 클릭하는 것을 잊지 마십시오


두 가지 옵션으로이를 수행 할 수 있습니다.

첫 번째 간단한 방법입니다.

.jar 파일을 클립 보드에 복사 한 다음 libs 폴더에 추가합니다. 프로젝트에서 libs 폴더를 보려면 폴더 위의 콤보 상자에서 프로젝트를 선택하십시오.

그런 다음 .jar 파일을 마우스 오른쪽 버튼으로 클릭하고 라이브러리로 추가를 클릭 한 다음 모듈을 선택한 다음 확인을 클릭합니다. 종속성 블록 내의 build.gradle 파일에서 .jar 파일을 볼 수 있습니다.

 dependencies {
        implementation fileTree(dir: 'libs', include: ['*.jar'])
        implementation 'com.android.support:appcompat-v7:21.0.3'
        implementation project(':okhttp-2.0.0')
        implementation 'com.google.code.gson:gson:2.3.1'
    }

두 번째 방법은 다음과 같습니다.이 .jar 파일을 .jar 모듈로 가져 와서 모듈에 .jar 파일을 추가 한 다음 원하는 모듈에이 모듈을 추가 할 수 있습니다.

가져 오기 모듈 ---> .jar 파일 선택-> .jar로 가져 오기보다-> 여기에 이미지 설명 입력

그런 다음 CTRL + ALT + SHIFT + S-> 프로젝트 구조-> jar를 추가 할 모듈을 선택하십시오-> 종속성-> 모듈 종속성. 모듈의 build.gradle이 자동으로 업데이트됩니다.여기에 이미지 설명 입력


나는 3 단계 이상을 했고 그 작업의 매력은 나를 위해.

(Android Studio 2.1.2를 사용하고 있습니다)

여기에 이미지 설명 입력

1 단계

  • build.gradle (Module : app) 아래의 gradle 빌드 스크립트에 jar 패키지 이름 (예 compile 'com.squareup.okhttp3:okhttp:3.3.1':)을 추가합니다 .

여기에 이미지 설명 입력

2 단계 : 폴더 -> 새로 만들기-> 모듈을 마우스 오른쪽 버튼으로 클릭합니다.

여기에 이미지 설명 입력

3 단계 : 클릭하여 가져 오기 JAR / .AAR 패키지는 다음 패키지를 찾습니다. 예 : OkHttp.jar

여기에 이미지 설명 입력


Android 프로젝트의 폴더에 .jar파일을 넣으십시오 libs.

그런 다음 앱의 gradle 파일에 다음 코드 줄을 추가합니다.

    compile fileTree(dir: 'libs', include: ['*.jar'])

Android gradle 플러그인 3.0 이상의 경우 대신 다음을 사용하는 것이 좋습니다.

    implementation fileTree(dir: 'libs', include: ['*.jar'])

Eclipse와 달리 jar를 다운로드하여 / libs 폴더에 넣을 필요가 없습니다. Gradle은 Gradle 종속성을 추가하기 만하면되는 이러한 작업을 처리하고 Gradle은이를 다운로드하여 gradle 캐시에 저장합니다.

종속성을 다음과 같이 추가해야합니다.

종속성 {implementation 'com.google.code.gson : gson : 2.2.4'}

그게 다야하지만 jar를 다운로드하고 라이브러리로 추가 할 수도 있지만 가장 좋은 방법은 Gradle 종속성을 추가하는 것입니다.


Android Studio 3 이상 :

jar 파일을 app 폴더 바로 아래의 libs 폴더에 간단히 복사 할 수 있어야합니다.

... myproject \ app \ libs \ myfile.jar

그런 다음 프로젝트 창의 드롭 다운에서 프로젝트 파일을 선택하고 프로젝트를 마우스 오른쪽 버튼으로 클릭 한 다음 동기화를 선택하여 프로젝트 파일에서 파일을 확인합니다. gradle 파일 (Module : app)에 종속성을 자동으로 추가합니다.

dependencies {
...
    implementation files('libs/myfile.jar')

다음은 또 다른 해결책입니다.

프로젝트 파일보기로 이동하십시오 (드롭 다운에서 프로젝트 파일 선택).

여기에 이미지 설명 입력

새로 만들기 ... 디렉토리를 선택하고 앱 바로 아래에 libs라는 폴더를 만듭니다.

여기에 이미지 설명 입력

파일 탐색기를 열고 jar 파일을 libs 폴더에 복사하여 붙여 넣습니다.

Android Studio에서 jar 파일을 마우스 오른쪽 버튼으로 클릭하고 팝업 메뉴에서 라이브러리로 추가 ...를 선택합니다.

여기에 이미지 설명 입력

gradle 파일의 종속성 목록에 나열된 파일이 표시되어야합니다.

dependencies {
...
    implementation files('libs/myfile.jar')
}

Java 파일을 열고 여기에 import 문을 추가합니다.

import com.xxx.xxx;

menu File -> project struct -> module select "app" -> dependencies tab -> + button 
-> File dependency -> PATH/myfile.jar

libs 폴더를 만듭니다. .jar 파일을 추가하십시오. 마우스 오른쪽 버튼을 클릭하면 jar를 종속성으로 추가 할 수 있습니다. 그것을 클릭하십시오. 당신이해야 할 모든 것. build.gradle 파일에 추가 된 종속성을 찾을 수 있습니다.


1) Project / app / src 폴더 안에 'your_libs'폴더를 만듭니다.

2)이 'your_libs'폴더에 jar 파일을 복사합니다.

3) Android Studio에서 File-> Project Structure-> Dependencies-> Add-> File Dependency로 이동하여 'src / your_libs'아래에 있어야하는 jar 파일로 이동합니다.

3) jar 파일을 선택하고 '확인'을 클릭하십시오.

그런 다음 build.gradle에서 다음과 같이 볼 수 있습니다. 파일 컴파일 ( 'src / your_libs / your.jar')


Android Studio 1.1.0에서. 다음 단계에 따라이 질문을 해결했습니다.

1 : libs 디렉토리에 jar 파일을 넣습니다. (Finder에서)

2 : 모듈 설정을 열고 종속성으로 이동하여 왼쪽 하단 모서리에 더하기 버튼이 있습니다. 더하기 버튼을 클릭 한 다음 "파일 종속성"을 선택합니다. 여기에서 jar 파일을 볼 수 있습니다. 그것을 선택하면 해결됩니다.


1 단계 : 이제 아래에이 표시 app folder되어야합니다. 표시 libs되지 않으면 생성합니다 .

2 단계 : Drag & Drop the .jar file here프롬프트가 표시 될 수 있습니다 . 버튼을 "This file does not belong to the project"클릭하십시오 OK.

3 단계 : 이제 libs 폴더 아래에 jar 파일 이 표시되어야합니다. jar 파일을 마우스 오른쪽 버튼으로 클릭하고"Add as library", Click OK for prompt "Create Library"

4 단계 : 이제이 이 추가되었습니다.

여기에 이미지 설명 입력


여기에서 모든 답변을 읽었으며 모두 Android Studio의 이전 버전을 다루는 것 같습니다!

Android Studio 2.2.3으로 만든 프로젝트에서는 libs아래 디렉터리 를 만들고 app거기에 항아리를 배치해야했습니다. 파일 관리자를 사용하여 Android Studio에서 아무것도 클릭하거나 편집 할 필요가 없습니다.

왜 작동합니까? 빌드 / 편집 라이브러리 및 종속성을 열면 다음이 표시됩니다.

{include=[*.jar], dir=libs}

Mac OS X :

  1. jar를 라이브러리로 추가 (jar를 libs로 드래그하고 lib로 추가를 마우스 오른쪽 버튼으로 클릭)

  2. 다음에 컴파일 문 추가 build.grade

  3. 설치 gradle v1.6(자작 사용)

    • 양조 설치 gradle
    • gradle -v
    • v1.6이 아닌 경우 homebrew를 업그레이드하십시오.
  4. gradle clean (안드로이드 다시 빌드가 작동하지 않음)

이것은 나를 분류했다.


이전에 지적한 많은 사람들처럼 당신은

compile files('libs/gson-2.2.3.jar') 

build.gradle 파일에.

그러나 Eclipse에서 마이그레이션 된 Android Studio에 프로젝트가 있으며이 경우 "libs"폴더의 이름은 "lib"이므로 "s"를 제거하면 문제가 해결되었습니다.


  1. libs수준에 폴더를 추가했습니다 app.
  2. jars이 프로젝트의 모든 항목을 추가 했습니다.
  3. 다음으로 libs폴더 에서 모든 항아리를 선택하고
  4. 선택한 항목을 마우스 오른쪽 버튼으로 클릭하고 add library
  5. 그러면 프로젝트 탐색기 자체 내에서 jars 확장 옵션을 찾을 수 있습니다.

내가 관찰 CTRL+ ALT+ SHIFT+ S> 프로젝트 구조 - ->를 응용 모듈 -> 종속성은 "이미 같은 항목이 있었다 (dir: 'libs', include: '*.jar')아래 compile-option. 위에서 설명한 단계에 따라, (가)의 처음과 단지를 추가 한 후 build.gradle얻은 새에 대한 항목 추가를 항아리 자체.


에서 안드로이드 스튜디오 2.1 나는이 길을 따라

Goto app-> src-> main-> assets 폴더 (사용할 수없는 경우 생성)-> JAR 파일 저장

여기에 이미지 설명 입력

build.gradle에서 다음과 같은 종속성을 추가하십시오.

implementation files('src/main/assets/jsoup.jar')
implementation files('src/main/assets/org-apache-xmlrpc.jar')
implementation files('src/main/assets/org.apache.commons.httpclient.jar')
implementation files('src/main/assets/ws-commons-util-1.0.2.jar')

지금 동기화하세요. 이제 JAR 파일을 사용할 준비가되었습니다.


최신 Android 1.0.2의 경우 다음이 이미 build.gradle 파일에 있습니다.

implementation fileTree(include: ['*.jar'], dir: 'libs')

라이브러리 jar를 libs 폴더에 추가-> 라이브러리를 마우스 오른쪽 버튼으로 클릭-> 라이브러리로 추가를 클릭-> 추가 할 프로젝트를 묻는 메시지-> 프로젝트 선택-> 확인을 클릭합니다. 다음 줄이 빌드에 자동으로 추가됩니다. .gradle

implementation files('libs/android-query.jar')

그것은 나를 위해 해냈다. 더 이상 필요하지 않았습니다. 나는 안드로이드에 대한 다른 제 3 자 라이브러리를 안드로이드에 대해 보여주었습니다.


내 대답은 기본적으로 위에 제공된 옳지 만 불완전한 답변을 수집하는 것입니다.

  1. build.gradle 열기
  2. 다음을 추가하십시오.

    dependencies {
    compile 'com.android.support:appcompat-v7:19.+'
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.google.code.gson:gson:2.3'
    }
    

    이를 통해 종속성을 추가하는 두 가지 다른 방법을 지원할 수 있습니다. compile fileTree(dir: 'libs', include: ['*.jar'])(@Binod가 언급 한 바와 같이) 모든 병의 폴더 libs와에서 볼 수있는 컴파일러를 알려줍니다. 애플리케이션이 사용해야하는 jar 패키지를 포함 할 'libs'폴더를 만드는 것이 좋습니다.

그러나 이것은 또한 Maven 종속성에 대한 지원을 허용합니다. 컴파일 'com.google.code.gson:gson:2.3'(@saneryee에 의해 언급 됨)은 / libs "로컬 저장소"가 아닌 중앙 원격 저장소에있는 종속성을 추가하는 또 다른 권장 방법입니다. 기본적으로 gradle에게 해당 패키지의 해당 버전을 찾도록 지시하고 프로젝트를 컴파일 할 때 컴파일러에게 고려하도록 지시합니다 (클래스 경로에 있음).

PS : 둘 다 사용합니다

참고 URL : https://stackoverflow.com/questions/16608135/android-studio-add-jar-as-library

반응형