Gradle : 태스크 ': processDebugManifest'에 대한 실행 실패


142

어제부터 건물에서 gradle 오류가 발생했습니다.

전체 스택 추적 :

내 프로젝트는 여러 라이브러리에 의존하며 어제까지 (라이브러리에서도) 아무런 문제없이 빌드되었습니다.

compile 'com.google.android.gms:play-services:3.1.36'
compile 'com.android.support:support-v4:13.0.0'
compile project(":libs:DatabaseCreationHelper")
compile project(":libs:actionbarsherlock")

누구나 고치는 방법을 알고 있습니까? 그것은 무작위로왔다 ... 여기에 전체 스택 추적 :

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':ItchyFeet:processDebugManifest'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
at org.gradle.api.internal.changedetection.state.CacheLockReleasingTaskExecuter$1.run(CacheLockReleasingTaskExecuter.java:35)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.cache.internal.DefaultCacheAccess.longRunningOperation(DefaultCacheAccess.java:179)
at org.gradle.cache.internal.DefaultCacheAccess.longRunningOperation(DefaultCacheAccess.java:232)
at org.gradle.cache.internal.DefaultPersistentDirectoryStore.longRunningOperation(DefaultPersistentDirectoryStore.java:142)
at org.gradle.api.internal.changedetection.state.DefaultTaskArtifactStateCacheAccess.longRunningOperation(DefaultTaskArtifactStateCacheAccess.java:83)
at org.gradle.api.internal.changedetection.state.CacheLockReleasingTaskExecuter.execute(CacheLockReleasingTaskExecuter.java:33)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:58)
at org.gradle.api.internal.tasks.execution.ContextualisingTaskExecuter.execute(ContextualisingTaskExecuter.java:34)
at org.gradle.api.internal.changedetection.state.CacheLockAcquiringTaskExecuter$1.run(CacheLockAcquiringTaskExecuter.java:39)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:124)
at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:112)
at org.gradle.cache.internal.DefaultPersistentDirectoryStore.useCache(DefaultPersistentDirectoryStore.java:134)
at org.gradle.api.internal.changedetection.state.DefaultTaskArtifactStateCacheAccess.useCache(DefaultTaskArtifactStateCacheAccess.java:79)
at org.gradle.api.internal.changedetection.state.CacheLockAcquiringTaskExecuter.execute(CacheLockAcquiringTaskExecuter.java:37)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:57)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:41)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:51)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:52)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:42)
at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(AbstractTask.java:282)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.executeTask(DefaultTaskPlanExecutor.java:48)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.processTask(DefaultTaskPlanExecutor.java:34)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:27)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:89)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:29)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23)
at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:67)
at org.gradle.api.internal.changedetection.state.TaskCacheLockHandlingBuildExecuter$1.run(TaskCacheLockHandlingBuildExecuter.java:31)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:124)
at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:112)
at org.gradle.cache.internal.DefaultPersistentDirectoryStore.useCache(DefaultPersistentDirectoryStore.java:134)
at org.gradle.api.internal.changedetection.state.DefaultTaskArtifactStateCacheAccess.useCache(DefaultTaskArtifactStateCacheAccess.java:79)
at org.gradle.api.internal.changedetection.state.TaskCacheLockHandlingBuildExecuter.execute(TaskCacheLockHandlingBuildExecuter.java:29)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23)
at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:67)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:54)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:166)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:113)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:81)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:64)
at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:33)
at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:24)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:35)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)
at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:50)
at org.gradle.api.internal.Actions$RunnableActionAdapter.execute(Actions.java:171)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:201)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:174)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:170)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:139)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
at org.gradle.launcher.Main.doAction(Main.java:48)
at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
at org.gradle.launcher.Main.main(Main.java:39)
at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:50)
at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:32)
at org.gradle.launcher.GradleMain.main(GradleMain.java:26)
Caused by: java.lang.RuntimeException: Manifest merging failed. See console for more info.
at com.android.builder.AndroidBuilder.doMerge(AndroidBuilder.java:475)
at com.android.builder.AndroidBuilder.mergeLibraryManifests(AndroidBuilder.java:461)
at com.android.builder.AndroidBuilder.processManifest(AndroidBuilder.java:301)
at com.android.builder.AndroidBuilder$processManifest.call(Unknown Source)
at com.android.build.gradle.tasks.ProcessAppManifest.doFullTaskAction(ProcessAppManifest.groovy:65)
at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.groovy:71)
at org.gradle.api.internal.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:216)
at org.gradle.api.internal.BeanDynamicObject.invokeMethod(BeanDynamicObject.java:122)
at org.gradle.api.internal.CompositeDynamicObject.invokeMethod(CompositeDynamicObject.java:147)
at com.android.build.gradle.tasks.ProcessAppManifest_Decorated.invokeMethod(Unknown Source)
at org.gradle.util.ReflectionUtil.invoke(ReflectionUtil.groovy:23)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.doExecute(AnnotationProcessingTaskFactory.java:217)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:210)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:199)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:526)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:509)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
... 67 more

답변:


133

이 문제에 대한 해결책을 찾았습니다.

gradle assemble -info는 매니페스트가 다른 SDK 버전을 가지고 있으며 병합 할 수 없다는 힌트를주었습니다.

Manifests와 build.gradle 파일을 편집해야했고 모든 것이 다시 작동했습니다.


명확하게하려면 AndroidManifest.xmluses-sdk 에서 를 편집해야합니다.

<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="16" />

android섹션, 특히 minSdkVersiontargetSdkVersion에서 build.gradle의 파일

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 16
    }
}

1
Android Studio를 사용중인 경우 gradle.build 파일을 편집하십시오. AndroidManifest.xml의 값은 빌드 중에 무시됩니다!
Diego Acosta

의 값을 변경 @Nakardo build.gradle내에서 값을 대체하지 않습니다 AndroidManifest.xml실행gradle assemble
니므롯 다얀

1
@Nakardo build.gradle은 sdkVersion항상 AndroidManifest.xmlAndroid 문서 따옴표 보다 우선합니다 .이 minSdkVersion 값은 사용되지 않습니다. 항상 Gradle 빌드 스크립트에 지정된 값으로 대체됩니다. 예를 들어 minSdkVersion 값은 build.gradle 빌드 스크립트에 지정되지 않은 경우에만 사용됩니다. Gradle 빌드 스크립트에 지정된 경우 매니페스트 값이 무시되고 오도 될 수 있으므로 모호성을 피하기 위해 제거해야합니다.
채드 빙엄

솔루션의 @Lukas Olsen 현장. 내 minsdk 버전은 19 였지만 gradle에서는 10 였지만 매니페스트에 선언되었지만 build.gradle의 targetSDK에는 여전히 필요하지 않습니다. 흥미롭게도 방금 안드로이드 스튜디오를 2.1.1로 업데이트했으며 이전에는 작동했습니다. 문제가 해결되었습니다.
natur3 2016 년

후속 조치로, 구문 분석에 사용하기 위해 strings.xml에서 응용 프로그램 ID를 가져 오는 중복 된 메타 데이터 태그가 있기 때문에 실제로 오류가 반환되었습니다. 나는 안드로이드 스튜디오 V의 Gradle을 콘솔 탭을 열 때까지 어떤 구문 분석 관련 오류하지만 메타 데이터가 충돌을 발생하지, 나는 실제로 didnt 한이 오류 세부 사항을 참조 2.1.1.
natur3

126

일반적인 방법으로 오류가 무엇인지 확인하려면 Android 스튜디오에서 병합 된 매니페스트 파일을 볼 수 있습니다

매니페스트 파일로 이동

여기에 이미지 설명을 입력하십시오

하단 탭 "병합 매니페스트"를 클릭하십시오

여기에 이미지 설명을 입력하십시오

오른쪽 화면의 "기타 매니페스트 파일"에서 graddle으로 인한 오류를 확인하십시오.

여기에 이미지 설명을 입력하십시오


당신은 내 하루를 저장
Abhishek Pachal

34

Lukas Olsen 솔루션이 다른 시나리오에서 작동하기를 원하지만 제 경우에는 상당히 다릅니다.

이전 라이브러리와 비교하여 ActionBarShelock을 프로젝트에 추가하는 동안 매니페스트에 응용 프로그램 태그가 없음을 발견했습니다. 한 줄을 추가하여 문제를 해결했습니다.

</application>

처음에는 SDK 버전 이었지만 이제는 <application />누락되었습니다. 당신은 저를 구 했어요
Benjamin Toueg

이것은 나의 경우이기도했다!
cesards

@Ahmad Ali Nasir 그러나 나의 경우에 나는 Lukas Olsen를 따르지만 변화는 나를 도울 수 없다
Manoj

@Manoj,하지만 build.grade 스크립트와 오류 로그를 공유하십시오. 따라서 우리 모두가 잘못하고있는 것에 대해 더 잘 이해할 수 있습니다.
Ahmad Ali Nasir

@Ahmad Ali Nasir 확실히 bro 내가 여기에 질문을 많이 올렸다 stackoverflow.com/questions/27266042/…
Manoj

17

Google Play 서비스에는 Android 2.2 (SDK 버전 8)가 필요하기 때문에 발생합니다.

에서 build.gradleminSdkVersion 이상이어야 8합니다. 기본값은 7입니다. 따라서 다음과 같은 것이 있습니다.

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 16
    }
}

dependencies {
    compile 'com.android.support:support-v4:13.0.+'
    compile 'com.google.android.gms:play-services:3.1.36'
}

이것은 내 매니페스트 문제를 해결했지만 이제 Gradle : error : 오류가 발생합니다. 모든 심볼 변수에 대한 심볼을 찾을 수 없습니다. 이것은 컴파일 오류가 발생하여 수정하기 전에 한 번 나에게 일어났습니다. 나는이 문제를 받기 시작했다. 이 문제를 해결하는 방법에 대한 단서가 있습니까?
Dan

Gradle이 내 주요 활동에 import android.R을 추가 한 것처럼 보입니다. 나는 줄을 삭제했고 지금은 모두 잘되었습니다.
Dan

14

이 한 줄을 응용 프로그램 태그에 넣어서 해결했습니다 ...

tools : node = "바꾸기"


이것은 내 문제를 해결했습니다. 감사! 나는 아래를 추가했다 application에 태그AndroidManifest.xml
Reaz Murshed

30 분 검색 후 내 문제가 해결되었습니다
Demon App Programmer

나를 위해 요소 유형 "application"과 연관된 속성 "tools : node"의 접두사 "tools"는 바인딩되지 않았습니다.
Amritesh Anand

나를 위해 작동하지 않습니다 오류가 발생했습니다 : "application"요소 유형과 관련된 "tools : node"속성의 접두어 "tools"가 바인딩되지 않았습니다.
Kapil soni

11

내 앱에 firebase 푸시 알림을 추가 할 때도이 오류가 발생했습니다. 그러나 제 경우에는 시간이 지난 후에 매우 어리석은 실수를하고있었습니다. 아래 코드를 매니페스트로 두 번 선언했습니다. 중복 선언을 제거한 후. 내 문제가 해결되었습니다.

        <service   android:name="com.evampsaanga.mytelenor.firebase.MyFirebaseInstanceIDService">
        <intent-filter>
            <action android:name="com.google.firebase.INSTANCE_ID_EVENT" />
        </intent-filter>
    </service>`

앱 매니페스트 파일에 중복 된 것이 있는지 확인하십시오.


최고의 답변 .. !!
RUTURAJ Raval

5

아마도 매니페스트에 중복 된 활동 선언 때문일 수 있습니다.


5

Gradle의 ActionBarSherlock과 같은 종속성을 추가하는 경우 targetSdkVersion 17 이상을
신중하게 설정하십시오 .

아래 인용문은 --infoActionBarSherlock이 개인 프로젝트와 일치하지 않을 때의 로그입니다.

[C : \ Me \ Documents \ GitHub \ project \ AndroidManifest.xml : 3, C : \ Me \ Documents \ GitHub \ project \ build \ exploded-bundles \ ComActionbarsherlockActionbarsherlock440.aar \ AndroidManifest.xml : 2] 기본 매니페스트에 라이브러리가 있습니다. targetSdkVersion = '17 '사용
: testApp : processDebugManifest FAILED

targetSdkVersion가능한 한 자신의 프로젝트를 유지하는 것이 좋습니다 .


고마워요 --info, 나는 붙어서 문제를 해결할 수있었습니다 ./gradlew assemble --info. 필자의 경우 주 매니페스트에 gles 버전 2를 선언했지만 라이브러리 프로젝트에는 없었습니다. 선언하지 않으면 기본값은 버전 1이며 이는 오류의 원인입니다 (비 호환성).
Orgmir

4

나는 같은 문제를 겪었고 그것을 고치기 위해 한 것은 추가하는 것이 었습니다.

tools:replace="android:icon"

재정의하려면 AndroidManifest의 요소에


4

매니페스트 파일에 추가 된 중복 권한 일 수 있습니다. 제 경우에는 "uses-permission android : name ="android.permission.READ_PHONE_STATE "가 반복되었습니다.


3

내가 볼 수있는 것처럼 Android Studio 및 gradle을 사용하는 다중 모듈 프로젝트가있는 경우 IDE 는 모든 모듈의 매니페스트 파일 을 기본 매니페스트로 병합 하려고합니다 .

모듈 A와 모듈 B가 있고 A 매니페스트에서 B 모듈의 일부 활동을 선언하면 병합 할 때 gradle에 문제가 발생합니다.

시도 간 모듈 참조 제거 매니페스트 파일을.


난 그냥 안드로이드 내가 그것을 실행 나던 모두 공통 라이브러리와 여러 프로젝트 A & B를 가지고있는 스튜디오 dexdebugTest 오류가 "루카스 올슨"을 따라하지만 변화가 u는 저를 도울 수있는 원인을 사용하고있는 테스트 케이스를 실행하려면
마노

@ Paolo M 난 그냥 테스트 케이스를 실행하고 싶습니다. 안드로이드 스튜디오를 사용하는 안드로이드 스튜디오를 사용하고 있습니다. 여기에는 공통 라이브러리가있는 여러 프로젝트 A & B가있었습니다.
Manoj

3

나의 경우에는,

매니페스트 파일에서 활동을 두 번 정의합니다.

 <application
  android:allowBackup="false"
  android:label="@string/app_name"
  >


      <activity
        android:name="com.xxx.ActivityOne"
        android:configChanges="orientation|screenSize"
        android:windowSoftInputMode="stateHidden|adjustResize" />

      //Problem here.. same activity twice define

      <activity
        android:name="com.xxx.ActivityOne"
        android:configChanges="orientation|screenSize"
        android:windowSoftInputMode="stateHidden|adjustResize" />

     </application>

중복 오류를 제거한 후 해결되었습니다.


따라서 요점은 <application>입니다. <activity>는 하나의 <manifest> 태그 내에서 한 번 정의되어야합니다
muhammad tayyab

@muhammadtayyab no .. 같은 활동을 두 번 정의했습니다. 그게 문제입니다. 당신은 n 숫자를 정의 할 수 있습니다 <activity>
Ranjith Kumar

2

나는 같은 문제가 있었고 다른 대답은 도움이되지 않았습니다.

필자의 경우 매니페스트 파일 의 주석은 범인이었습니다.

<manifest [...]
    android:installLocation="auto">
    <!-- change installLocation back to external after test -->

    <uses-sdk [...]

(이것은 버그 일 수 있으며 매니페스트의 다른 영역에있는 주석이 어떻게 문제를 일으키지 않는지 확인합니다.)


2

나는 달릴 때 비슷한 문제를 겪었다.

cordova build android

어떤 오류를보고 :

 /home/app/phonegap/helloworld/platforms/android/AndroidManifest.xml:15:5 Error:
uses-sdk:minSdkVersion 7 cannot be smaller than version 10 declared in library  /home/app/phonegap/helloworld/platforms/android/build/intermediates/exploded-aar/android/CordovaLib/unspecified/debug/AndroidManifest.xml
Suggestion: use tools:overrideLibrary="org.apache.cordova" to force usage

: processDebugManifest가 실패했습니다

실패 : 예외로 인해 빌드가 실패했습니다.

  • 잘못된 일 : ': processDebugManifest'태스크에 대한 실행이 실패했습니다.

    매니페스트 병합 실패 : uses-sdk : minSdkVersion 7은 라이브러리 / home / app / phonegap / helloworld / platforms / android / build / intermediates / exploded-aar / android / CordovaLib / unspecified / debug / AndroidManifest에 선언 된 버전 10보다 작을 수 없습니다. xml 제안 : tools : overrideLibrary = "org.apache.cordova"를 사용하여 강제 사용

나의 경우에는,

uses-sdk:minSdkVersion 7 cannot be smaller than version 10 declared

위의 솔루션이 작동하지 않습니다! 하지만 교체하여 해결합니다.

<preference name="android-minSdkVersion" value="7" />

같이

<preference name="android-minSdkVersion" value="10" />

이 두 파일 /home/app/phonegap/helloworld/config.xml에서/home/app/phonegap/helloworld/platforms/android/res/xml/config.xml


2

AndroidManifest.xml에 추가해야 할 2 가지 :

첫 번째 : xmlns : tools = "http://schemas.android.com/tools"를 추가하여 태그를 표시하십시오.

<manifest xmlns:android=".........
   package="...........
   xmlns:tools="http://schemas.android.com/tools">

2 차 : 응용 프로그램 태그에 tools : replace = "icon"추가

<application
       android:icon=.........
       android:label=.......
       tools:replace="icon">

1

변경해보십시오.

<manifest xmlns:android="http://schemas.android.com/apk/res/android">
...
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="16" />

에:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">
...
<uses-sdk xmlns:tools="http://schemas.android.com/tools"
    android:minSdkVersion="14" android:targetSdkVersion="16" />

1

android studio를 사용하는 경우 명령 프롬프트 창 (Windows) 또는 터미널 (UNIX 기본 OS)을 통해 android studio를 실행해야 명령 프롬프트 창에서이 오류에 대한 자세한 내용을 볼 수 있습니다.


IDE의 Gradle 탭에서 마지막 버튼을 눌러 열리는 Gradle Settings 대화 상자에서 gradle 명령 행 옵션을 지정할 수 있으므로 실제로 명령 행에 의존 할 필요가 없습니다. 그러나이 빌드 도구를 사용하여 참 아야 할 똥의 양은 정말 믿어지지 않습니다.
Giulio Piancastelli 2018 년

1

Urban Airship을 최신 버전으로 업데이트하려고 할 때 가능한 다른 해결책을 찾았습니다. 내 최상위 build.gradle 파일에서 코드는 다음과 같습니다.

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.12.2'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

기본적으로 Android Studio에서 생성됩니다. 이것을 다음으로 대체하여 이후 gradle 버전으로 변경했습니다.

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.13.+'
    }
}

그리고 그 후 프로젝트는 구축 될 것입니다.


이와 같은 것도 내 문제였습니다! build.gradle에 {mavenCentral ()} 리포지토리가 있었으므로이 문제를 해결했습니다.
David

1

필자의 경우 Manifest 파일에 대한 중복 권한으로 인해 라이브러리의 minSDKVersion이 프로젝트의 minSDKVersion보다 컸습니다. 방금 minSDKVersion을 동일하게 만들고 성공으로 컴파일했습니다.


1

이 문제는 compileSdkVersion 26 buildToolsVersion "26.0.0"또는 'com.android.support:appcompat-v7:26.+'컴파일로 인해 발생합니다.

이 대신 compileSdkVersion 25 buildToolsVersion "25.0.3"컴파일 'com.android.support:appcompat-v7:25.+'


1

제 경우에는 태그를 두 번 작성했습니다. 그건 내 유일한 실수 였어

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>

    <uses-permission android:name="android.permission.RECORD_AUDIO"/>


<application tools:targetApi="28" tools:ignore="GoogleAppIndexingWarning" android:networkSecurityConfig="@xml/react_native_config" />




<application application tools:targetApi="28" tools:ignore="GoogleAppIndexingWarning" android:networkSecurityConfig="@xml/react_native_config" >

</application>

`

응용 프로그램 태그를 제거하면 문제가 해결되었습니다.

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">

    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>



    <application tools:targetApi="28" tools:ignore="GoogleAppIndexingWarning" android:networkSecurityConfig="@xml/react_native_config" />



</manifest>

태그는 하나만 있어야합니다. 와 둘 이상의 태그를 가질 수 있습니다. 그것이 바로 지금 내가 아는 것입니다 :)


1

중복 된 활동이있을 수 있습니다.

이처럼 :

<activity android:name=".register.RegisterStepsActivity" />

....

<activity android:name=".register.RegisterStepsActivity" />

그냥 그들 중 하나를 주석


1

이 오류는 매니페스트 파일에서 속성이 비어있는 상태 일 수 있습니다.

예를 들면 :

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:logo="@drawable/ic_actionbar"
    android:supportsRtl="true"
    android:fullBackupContent="">
...
</application>

그만큼 fullBackupContent 위의 예에서 비어 있습니다.

로 변경되면 android:fullBackupContent="true"수정됩니다.


1

"gradle.properties"에 다음 두 줄을 추가하십시오.

android.useAndroidX=true
android.enableJetifier=true

2
이것은 불가능합니다. 이미 그 줄을 가지고 있었고 gradle.propertiesWindows OS 환경에서 실행하려고 시도 할 때 까지이 오류가 발생하지 않았습니다.
Daniel

0

필요한 SDK 버전을 설치하지 않았기 때문에 이러한 오류가 발생했습니다. build.gradle / Android Manifest 파일에있는 SDK 버전을 다운로드하여 설치 한 후 해결되었습니다.


0

다른 이유로 문제를 만났습니다.

Android Studio에서 앱을 빌드하고 있었고 앱 모듈과 다른 모듈이있었습니다. 앱 모듈은 다른 모듈에 따라 다릅니다.

그러나 build.gradle앱 모듈의 일부 는 다음과 같습니다.

<application
    android:allowBackup="false"
    android:label="@string/app_name"
    android:supportsRtl="true">

    ...

</application>

다른 모듈 build.gradle부분은 다음과 같습니다.

<application
    android:allowBackup="true"
    android:label="Android Lua"
    android:supportsRtl="true">

</application>

따라서 모듈 build.gradle부분을 ​​다음 과 같이 변경합니다 .

<application
    android:allowBackup="false"
    android:label="@string/app_name"
    android:supportsRtl="true">

</application>

문제 해결됨.



0

내 경우에는 매니페스트 파일에 유효하지 않은 태그 구조가 있었지만 열린 활동이 닫혔지만 그 안에 activities (...)파일 정확성이 무효화되는 광석이 있었는데 꽤 2 시간이 걸렸다는 오류가 누락 / 알 수 없음을보고했습니다 <activity>.


0
compile 'com.github.wenchaojiang:AndroidSwipeableCardStack:0.1.1'

이것이 종속성 인 경우 다음으로 변경하십시오.

compile 'com.github.wenchaojiang:AndroidSwipeableCardStack:0.1.4'

하고 있는지 확인 target sdk미만해서는 안됩니다 (15) .


0

프로젝트를 정리하고 다시 작성하여 Android Studio 3.5 에서이 문제를 해결했습니다.

빌드-> 프로젝트 다시 빌드를 클릭하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.