programing

안드로이드 프로젝트에서 외부 JAR을 사용하려면 어떻게 해야 합니까?

linuxpc 2023. 5. 1. 20:00
반응형

안드로이드 프로젝트에서 외부 JAR을 사용하려면 어떻게 해야 합니까?

Android 프로젝트를 만들고 외부 JAR(hesian-4.0.1.jar)을 프로젝트에 추가했습니다.그런 다음 빌드 경로에 JAR을 추가하고 Order and Export(주문 및 내보내기)에서 확인했습니다.

순서 및 내보내기가 무시되는 것처럼 보이며, 실행 시 외부 JAR의 모든 클래스가 누락됩니다.

이클립스 플러그인을 사용하여 안드로이드 애플리케이션을 구축할 때 외부 JAR에서 필요한 클래스를 적절하게 포함하는 요령이 있습니까?나는 개미나 메이븐을 사용하고 싶지 않습니다.

이클립스용

Android 프로젝트나 Java 프로젝트에 외부 JAR를 추가하는 좋은 방법은 다음과 같습니다.

  1. 프로젝트의 루트 폴더에 호출할 폴더 만들기
  2. JAR 파일을 폴더에 복사합니다.
  3. 이제 Jar 파일을 마우스 오른쪽 버튼으로 클릭한 다음 Build Path > Add to Build Path를 선택하면 프로젝트 내에 'Referenced Libraries'라는 폴더가 생성됩니다.

    이렇게 하면 프로젝트를 다른 컴퓨터로 전송할 때마다 하드 드라이브에서 참조되고 있는 라이브러리가 손실되지 않습니다.

Android Studio용

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

이미지 누락

  1. 외부 라이브러리를 추가할 모듈을 마우스 오른쪽 버튼으로 클릭한 다음 New > Directroy를 선택하고 'libs'로 이름을 지정합니다.
  2. blah_blah.jar를 'libs' 폴더에 복사합니다.
  3. blah_blah.jar를 마우스 오른쪽 단추로 클릭한 다음 'Add as Library...'를 선택합니다.이렇게 하면 자동으로 build.gradle에 컴파일 파일('libs/blah_blah.jar')로 추가 및 입력하고 그라들을 동기화합니다.그리고 당신은 끝났습니다.

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

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

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

네, 사용하실 수 있습니다.방법은 다음과 같습니다.

  1. 프로젝트 -> 오른쪽 버튼을 클릭합니다. -> 가져오기 -> 파일 시스템 -> 당신의 병.항아리
  2. 당신의 프로젝트 -> 오른쪽 버튼을 클릭하세요 -> 속성 -> 자바 빌드 경로 -> 라이브러리 -> 항아리 추가 -> 당신의 항아리.항아리

비디오는 문제가 있는 경우에 유용할 수 있습니다.

OP가 Eclipse 플러그인에 대한 질문으로 끝나는 것을 알고 있지만, 저는 Eclipse를 지정하지 않은 검색으로 여기에 도착했습니다.Android Studio는 다음과 같습니다.

  1. 더하다jar to 디렉토리: 복사/삭제libs 디렉예에파삭저장일리터(파일: /제paste)
  2. 마우스 오른쪽 단추 클릭jar파일을 작성하고 "라이브러리로 추가..."를 선택합니다.."
  3. 다음 대화 상자에서 "확인"을 클릭하거나 원하는 경우 이름을 변경합니다.

바로 그거야!

저는 현재 SDK 20.0.3을 사용하고 있으며, 이전 솔루션 중 어느 것도 제대로 작동하지 않았습니다.

hssdroid가 hess에 실패한 경우 작동하는 이유는 두 jar 파일에 서로 다른 가상 시스템에 대해 컴파일된 java가 포함되어 있기 때문입니다.Java 컴파일러에서 생성한 바이트 코드가 Dalvik 가상 시스템에서 실행되는 것을 보장하지 않습니다.Android 컴파일러가 만든 바이트 코드가 Java 가상 시스템에서 실행되는 것을 보장하지 않습니다.

제 경우에는 소스 코드에 액세스할 수 있었고 여기서 설명한 방법을 사용하여 소스 코드에 대한 Android jar 파일을 만들 수 있었습니다. https://stackoverflow.com/a/13144382/545064

스택 추적에서 제가 충분히 좋아 보이지 않은 것으로 드러났습니다. 문제는 외부 JAR이 포함되어 있지 않다는 것이 아닙니다.

문제는 안드로이드 플랫폼에 javax.naming이 없다는 것입니다.그리고 외부 JAR에 종속성이 있는 다른 패키지도 많습니다.

외부 JAR 파일을 추가하고 Eclipse에서 Order and Export를 설정하면 Android 프로젝트에서 예상대로 Android 프로젝트에서 작동합니다.

현재 프로젝트로 이동

마우스 오른쪽 단추 클릭 ->속성 ->자바 빌드 경로 ->자바 파일을 라이브러리에 추가 ->확인을 클릭합니다.

그런 다음 현재 프로젝트의 참조 라이브러리 파일에 추가됩니다.

Android의 Java API는 javax.naming을 지원하지 않습니다.그리고 많은 다른 javax들.속을 채우다종속성을 별도의 병으로 포함해야 합니다.

Android Studio를 사용하는 경우 다음을 수행합니다(@Vinayak B 응답을 복사 및 수정했습니다).

  1. 프로젝트 측면 보기에서 프로젝트 보기를 선택합니다(패키지 또는 Android 대신).
  2. 프로젝트의 루트 폴더에 libs라는 폴더 만들기
  3. JAR 파일을 libs 폴더에 복사합니다.
  4. 사이드뷰가 업데이트되고 JAR 파일이 프로젝트에 표시됩니다.
  5. 이제 가져올 각 JAR 파일을 마우스 오른쪽 단추로 클릭한 다음 프로젝트에 포함할 "라이브러리로 추가..."를 선택합니다.
  6. 그런 다음 코드의 새 클래스를 참조하기만 하면 됩니다. import javax.mail.*

gradle을 사용하는 경우 안드로이드 스튜디오에서.

build.gradle에 추가합니다.

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

그리고 libs 폴더에 jar 파일을 추가합니다.

Gradle Build 시스템을 사용하는 경우 다음 단계를 수행합니다.

  1. 놓다jar각각의 내부 파일libsAndroid 앱의 폴더입니다.일반적으로 다음 사이트에서 확인할 수 있습니다.Project>app>libs.한다면libs폴더가 없습니다. 폴더를 만드십시오.

  2. 이것을 당신의 것에 추가합니다.build.gradle파일로 저장app(사용자에게 아님)Projectbuild.gradle)

    dependencies {
        compile fileTree(dir: 'libs', include: '*.jar')
        // other dependencies
    }
    

    여기에는 당신의 모든 것이 포함될 것입니다.jar사용 가능한 파일libs폴더를 누릅니다.

모두 포함하지 않으려면jar파일을 개별적으로 추가할 수 있습니다.

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

프로젝트 내에 lib와 같은 폴더를 만들고 해당 폴더에 jar를 복사합니다.이제 프로젝트에서 마우스 오른쪽 버튼을 클릭하여 빌드 경로를 구성합니다. 빌드 경로에서 선택

'add jar' 작성한 폴더를 찾아 jar를 선택합니다.

.jar 파일을 Android 프로젝트의 폴더에 복사하는 것이 항상 가능한 것은 아닙니다.
특히 작업 공간에 있는 다른 프로젝트의 결과이며 계속해서 업데이트되는 경우에는 더욱 그렇습니다.

이 문제를 해결하려면 jar를 가져오는 대신 프로젝트에 링크된 파일로 추가해야 합니다(로컬로 복사됨).

UI에서 다음을 선택합니다.

프로젝트 -> 가져오기 -> 파일 시스템 -> yourjar.jar -> (옵션 영역) 고급 -> 작업영역에서 링크를 만듭니다.

링크는 .project 파일에 저장됩니다.

<linkedResources>
    <link>
        <name>yourjar.jar</name>
        <type>1</type>
        <locationURI>PARENT-5-PROJECT_LOC/bin/android_ndk10d_armeabi-v7a/yourjar.jar</locationURI>
    </link>
</linkedResources>

PARENT-5-PROJECT_LOC프로젝트 파일과 관련된 디렉터리 5개(../../../../../../)를 의미합니다.

그런 다음 라이브러리에 추가합니다.
Project -> Properties -> Java 빌드 경로 -> Librars -> Add Jar -> your jar.항아리

같은 창에서 Order and Export(주문 및 내보내기) 탭을 선택하고 apk에 추가되도록 병을 표시합니다.

언급URL : https://stackoverflow.com/questions/1334802/how-can-i-use-external-jars-in-an-android-project

반응형