programing

com.discloss.conf를 클릭합니다.build.build.api.변혁예외.

javaba 2022. 7. 27. 23:47
반응형

com.discloss.conf를 클릭합니다.build.build.api.변혁예외.

Google 사인인을 통합하려고 하는데, 앱에 다음 라이브러리를 추가했습니다.

compile 'com.google.android.gms:play-services-identity:8.1.0'
compile 'com.google.android.gms:play-services-plus:8.1.0'

프로젝트 빌드 그래들에도 이 항목을 추가합니다.

classpath 'com.google.gms:google-services:1.4.0-beta3'

또한 앱 빌드 그라들에 플러그인 추가:

apply plugin: 'com.google.gms.google-services'

그런 다음 필요한 권한을 추가했는데 앱을 실행하려고 하면 다음 오류가 표시됩니다.

    Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
    com.android.build.transform.api.TransformException: com.android.ide.common.process.ProcessException: 
    org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.8.0\bin\java.exe'' finished with non-zero exit value 2

번 더 써보세요.multiDexEnabled truebuild.gradle 파일로 이동합니다.

 defaultConfig {
    multiDexEnabled true
}

편집:

먼저 스티브의 대답을 시도해 보세요.자주 발생하거나 첫 번째 단계가 도움이 되지 않는 경우multiDexEnabled서 더 것을 유사한 더 많은답변 )가 .여기서 더 자세히 알아보고 싶은 분들을 위해 몇 가지 유사한 문제(더 많은 답변 포함)가 있습니다.

: app:dexDebugExecException이 0이 아닌 종료값 2로 종료되었습니다.

오류: 작업 ':app:dexDebug'.com.android.ide.common.process를 실행하지 못했습니다.프로세스 예외

또 한 가지 주의해야 할 것은, 이 제품을 사용하지 않는다는 것입니다.

compile 'com.google.android.gms:play-services:8.3.0'

그러면 모든 플레이 서비스가 Import 됩니다.단일 덱스 APK의 65535 메서드 제한을 초과하려면 hello 월드만 있으면 됩니다.

항상 필요한 서비스만 지정하십시오. 예를 들어 다음과 같습니다.

compile 'com.google.android.gms:play-services-identity:8.3.0'
compile 'com.google.android.gms:play-services-plus:8.3.0'
compile 'com.google.android.gms:play-services-gcm:8.3.0'

그냥 내 프로젝트를 청소만 하면 돼. 그리고 나서 성공적으로 만들어졌어.

이 오류는 프로젝트에 몇 가지 새로운 방법을 추가했을 때 나타나기 시작했습니다.65k 메서드 제한에 전혀 미치지 못했다는 것을 알았기 때문에 가능하면 프로젝트에 멀티덱스 지원을 활성화하고 싶지 않았습니다.

하려면 , 이 the the the the the the the the the the the the available available available available available available available available available available available available available available available available available 를 늘려서 해결했습니다.:app:transformClassesForDexForDebug작업. javaMaxHeapSize를 지정하여 이 작업을 수행했습니다.gradle.build.

gradle.build

android {
    ...
    dexOptions {
        javaMaxHeapSize "4g" //specify the heap size for the dex process
    }
}

이 문제에 대한 다른 일반적인 해결 방법이 성공하지 못한 후 다음을 시도했습니다.

  • 실행 중clean
  • /app/build ★★★★★★★★★★★★★★★★★」/build 의 디렉토리
  • Gradle 캐시 비활성화 및 Android Studio 재시작

에러

오류: 작업 > ':app:transformClassesWithDexForDebug.'.com.android를 실행하지 못했습니다.build.api.displaces.변혁예외: com.android.ide.common.process.Process Exception : org.gradle.process.내부의.Exec Exception:'/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/bin/java' 프로세스가 0이 아닌 종료 값 1로 완료되었습니다.

주의: DEX 태스크에 사용할 수 있는 메모리를 늘리면 메모리가 부족한 시스템에서 성능 문제가 발생할 수 있습니다. - 링크.

Android Studio 1.5.1과 gradle 1.5.0에서도 비슷한 문제에 직면했습니다.앱의 build.gradle 파일에 자동으로 추가될 수 있는 종속성에서 원하지 않는 라이브러리를 제거하면 됩니다.하나는 컴파일 'com.google.android.gms:play-services: 8.4.0'입니다.따라서 베스트 프랙티스에 대해서는 광고와 마찬가지로 특정 플레이 서비스 라이브러리만 포함하도록 합니다.

dependencies {
    compile 'com.google.android.gms:play-services-ads:8.4.0'
}

비록 ~일지라도

defaultConfig {
    multiDexEnabled true
}

이렇게 하면 문제가 해결되지만 그래들 콘솔에 많은 Notes가 제공되므로 빌드 중에 다른 실제 문제를 찾기 어렵습니다.

당신은 안드로이드의 설명서를 볼 수 있다.

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.0"

    defaultConfig {
        ...
        minSdkVersion 14
        targetSdkVersion 21
        ...

        // Enabling multidex support.
        multiDexEnabled true
    }
    ...
}

dependencies {
  compile 'com.android.support:multidex:1.0.0'
}

Manifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.android.multidex.myapplication">
    <application
        ...
        android:name="android.support.multidex.MultiDexApplication">
        ...
    </application>
</manifest>

AS 1.5.1을 사용하고 있는데 같은 문제가 발생했습니다.하지만 프로젝트를 청소하는 것만으로 충분치 않아서, 나는 뭔가를 시도했다.

  • 클린 프로젝트
  • AS의 재기
  • 프로젝트 동기화

이게 효과가 있었으니까 도움이 됐으면 좋겠어요.

내 케이스 변경 빌드Tools 버전 "24"에서 "23.0.2"로, 문제를 해결합니다.

내 경우 다음과 같은 모든 Google Play 서비스 확장 버전이 아니기 때문에 예외가 발생했습니다.

 compile 'com.google.android.gms:play-services-plus:9.8.0'
 compile 'com.google.android.gms:play-services-appinvite:9.8.0'
 compile 'com.google.android.gms:play-services-analytics:8.3.0'

이거로 바꿨을 때 효과가 있었어요

compile 'com.google.android.gms:play-services-plus:9.8.0'
 compile 'com.google.android.gms:play-services-appinvite:9.8.0'
 compile 'com.google.android.gms:play-services-analytics:9.8.0'

다음 방법으로 해결했습니다.

I configured 멀티덱스

build.gradle에서 다음 항목을 추가해야 합니다.

android {
...
   defaultConfig {
       ...
       // Enabling multidex support.
       multiDexEnabled true
       ...
   }
   dexOptions {
      incremental true
      maxProcessCount 4 // this is the default value
      javaMaxHeapSize "2g"
   }
...
}
dependencies {
...
   compile 'com.android.support:multidex:1.0.1'
...
}

local.properties에 다음 항목을 추가합니다.

org.gradle.parallel=true
org.gradle.configureondemand=true
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

그 후 어플리케이션클래스에 멀티덱스도 추가해야 합니다.

 public class MyApplication extends MultiDexApplication {

   @Override
   public void onCreate() {
       super.onCreate();
       //mas codigo
   }

   @Override
   protected void attachBaseContext(Context base) {
       super.attachBaseContext(base);
       MultiDex.install(this);
   }
}

Manifest.xml에 라인 코드를 추가하는 것을 잊지 마십시오.

<application
    ...
    android:name=".MyApplication"
    ...
/>

이것으로 버그를 해결했습니다.작업 ':app:transformClassesWithDexForDebug'를 실행하지 못했습니다.javaMaxHeapSize "2g"와 local.properties org.gradle.jvmargs=-Xmx2048m에서 build.gradle을 잘 확인하십시오.

git을 통해 이전 버전으로 롤백했을 때도 같은 문제가 있었습니다.그 버전에는 서드파티 API의 이전 .jar 라이브러리가 있었고, 어떤 이유에서인지 같은 SDK의 두 jar가 모두 /libs 폴더에 다른 버전만 있는 것이 판명되었습니다.

먼저 중간 파일 삭제, APP FOLDER\app\build\mediate 또는 프로젝트를 정리하고 재구축합니다.

추가 안 함

multiDexEnabled true

예.

defaultConfig {
        multiDexEnabled true
}

나에겐 일인데

는 이 를 최신 했습니다.buildToolsVersion

android {
    //...
    buildToolsVersion '26.0.2' // change from '23.0.2'
    //...
}

위의 모든 것이 당신에게 효과가 없다면 도움이 되는 답변입니다.

앱 그래들 파일로 이동하여

모든 종속 버전이 (com.example.demo:+)와 같은 상대값이 아닌 적절한 버전코드로 기재되어 있는지 확인합니다.

이전 구현 'com.google.api-client:google-api-client-android:+'

구현 후 'com.google.api-client:google-api-client-android: 1.30.0'

최신 gradle 버전을 사용하는 경우classpath 'com.android.tools.build:gradle:1.5.0' and classpath 'com.google.gms:google-services:1.4.0-beta3'그런 다음 SDK 매니저에서 최신 지원 저장소를 업데이트하고 프로젝트 전체를 재구축해 보십시오.

cordova 플러그인에 대해 이 참조를 추가해야 할 경우 plugin.xml 파일에 다음 행을 추가합니다.

<framework src="com.android.support:support-v4:+" />

다른 종속성에 동일한 jar가 있는 경우에도 이 빌드 오류가 발생합니다.

예를 들어 다음과 같습니다.

compile('com.a.b:library1');
compile('com.c.d:library2');

"library1"과 "library2"가 같은 이름의 병을 가지고 있는 경우xxx.jar이 경우 오류가 발생합니다.

이클립스 메모리 유출 때문에 나한테 일어난 일이야컴퓨터를 다시 시작해야 했어요.

그래들 안에 있는 몇 개의 pngs와 빌드 번호를 바꿨는데 이제 알겠네요.클리닝과 재기동은 전혀 도움이 되지 않았다.Instant Run을 비활성화하면 해결됩니다.YMMV

같은 옵션이 있어서 Instant run을 끄자마자 API16 디바이스에서는 정상적으로 동작했지만, API24 디바이스에서는 Instant run에서는 정상적으로 동작했습니다.

이것이 같은 문제를 안고 있는 누군가에게 도움이 되기를 바랍니다.

빌드 - 빌드 유형 편집 - 속성 탭 - 빌드 유형 버전으로 이동한 후 버전 23.0.1로 다운그레이드하십시오.[확인] 을 클릭합니다.이것은 Android Studio 1.5에서 작동합니다.그것은 나에게 효과가 있었다.

write answer는 gradle put defaultConfig { multiDexEnabled true }, manifest Android="android.support.multidex.MultiDexApplication"에 있는 응용 프로그램 이름으로 이 답변이 누군가에게 지옥 같기를 바랍니다.

이 코드는 문제를 해결했다.

defaultConfig {
        multiDexEnabled true
}

Google Sign in Visit을 구현하는 가장 쉬운 방법은 Google Sign in Android입니다.

또, 시험해 보세요.

dexOptions {
        javaMaxHeapSize "4g" 
    }

또한 다른 서비스에 대해서도 동일한 버전 번호를 유지합니다.

이 문제를 해결하려면 다음 항목을 추가했습니다.build.gradle:

defaultConfig {
    multiDexEnabled true
}

local.properties,

org.gradle.jvmargs=-XX\:MaxHeapSize\=512m -Xmx512m

언급 의존성:

compile 'com.android.support:multidex:1.0.1'

클리닝 및 리빌드.

'Incase 'Instant Run'이 활성화되어 있으면 비활성화만 하면 됩니다.

언급URL : https://stackoverflow.com/questions/32807587/com-android-build-transform-api-transformexception

반응형