私は昨日からビルでエラーエラーを受けています - それはただランダムに来ました....
ここでフルスタックトレース:
私のプロジェクトは複数のライブラリに依存していて、昨日までは問題なくビルドされていました(ライブラリでさえ)
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
この問題に対する解決策を見つけました:
gradle assemble -infoを使用すると、マニフェストのSDKバージョンが異なるためマージできないというヒントが得られました。
私は自分のマニフェストとbuild.gradleファイルを編集する必要があり、すべてがまたうまくいった。
明確にするためには、AndroidManifest.xmlのuses-sdk
を編集する必要があります
<uses-sdk Android:minSdkVersion="14" Android:targetSdkVersion="16" />
とAndroid
セクション、特にbuild.gradleファイルのminSdkVersion
とtargetSdkVersion
Android {
compileSdkVersion 17
buildToolsVersion "17.0.0"
defaultConfig {
minSdkVersion 14
targetSdkVersion 16
}
}
Lukas Olsenのソリューションが他のシナリオでも機能することを願っていますが、私の場合はまったく異なります。
ActionBarShelockをプロジェクトに追加しているときに同じことに直面しました。以前のライブラリと比較して、applicationタグがマニフェストにないことがわかりました。 1行追加することで問題を解決しました。
</application>
これは、Google Play ServicesにAndroid 2.2(SDKバージョン8)が必要であるために発生しているようです。
build.gradle
で、minSdkVersionが少なくとも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'
}
私は自分のアプリにfirebaseプッシュ通知を追加していたときにもこのエラーに直面しました。しかし、私の場合、私はしばらくして気づいた非常に愚かなミスをしていました。以下のコードをマニフェストで2回宣言しました。重複した宣言を削除した後私の問題は解決しました。
<service Android:name="com.evampsaanga.mytelenor.firebase.MyFirebaseInstanceIDService">
<intent-filter>
<action Android:name="com.google.firebase.INSTANCE_ID_EVENT" />
</intent-filter>
</service>`
そのため、アプリマニフェストファイルに重複するものがあるかどうかも確認します。
この1行をアプリケーションタグに入れることで解決しました...
tools:node = "置換"
GradleによるActionBarSherlockのような依存関係を追加すると、
targetSdkVersion 17以上を慎重に設定してください。
ActionBarSherlockが非公開プロジェクトと一致しない場合の引用符は、--info
ログです。
[C:\ Me\Documents\GitHub\project\AndroidManifest.xml:3、C:\ Me\Documents\GitHub\project\build \展開されたバンドル\ ComActionbarsherlockActionbarsherlock440.aar\AndroidManifest.xml:2] targetSdkVersion = '17 'を使用します
:testApp:processDebugManifestが失敗しました
可能な限り最新の独自のプロジェクトtargetSdkVersion
を維持するのが良いでしょう。
多分それはあなたのマニフェストで重複したActivity宣言が原因です。
マニフェストファイルに重複した権限が追加されている可能性があります。私の場合は "uses-permission Android:name =" Android.permission.READ_PHONE_STATE "を繰り返しました。
私は同じ問題に遭遇しました、そして、私がそれを修正するためにしたことは追加することでした
tools:replace="Android:icon"
androidManifestの要素にオーバーライドする
私が見ることができるものとして、あなたがAndroid Studioとgradleを使ったマルチモジュールプロジェクトを持っているなら、IDEは マニフェストファイルをマージしよう すべてのモジュールからMainマニフェストへ。
モジュールAとモジュールBがあり、AマニフェストでBモジュールからアクティビティを宣言している場合、gradleはマージ時に問題を引き起こします。
マニフェストファイルで クロスモジュール参照を削除する を試してください。
実行したとき、私は同じような問題に出くわしました
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が失敗しました
FAILURE:ビルドは例外で失敗しました。
マニフェストの統合に失敗しました:uses-sdk:minSdkVersion 7は、ライブラリ/ home/app/phonegap/helloworld/platform/Android/build /仲介物/ explode-aar/Android/CordovaLib /未指定/ 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" />
この2つのファイルでは/home/app/phonegap/helloworld/config.xml
、/home/app/phonegap/helloworld/platforms/Android/res/xml/config.xml
私の場合、
マニフェストファイルでアクティビティを2回定義します
<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>
重複エラーを取り除いた後に解決しました。
私は同じ問題を抱えていたし、他の答えのどれも助けにはならなかった。
私の場合は、マニフェストファイルのコメントが原因でした。
<manifest [...]
Android:installLocation="auto">
<!-- change installLocation back to external after test -->
<uses-sdk [...]
(これはバグの可能性があります。マニフェストの他の領域のコメントがどのように問題を引き起こさないかを見るとわかります)。
この問題はcompileSdkVersion 26 buildToolsVersion "26.0.0"または 'com.Android.support:appcompat-v7:26.+'をコンパイルしたために発生します
代わりに、compileSdkVersion 25 buildToolsVersion "25.0.3"を使用して 'com.Android.support:appcompat-v7:25.+'をコンパイルしてください。
androidスタジオを使用している場合は、コマンドプロンプト(Windowsの場合)または端末(UNIXベースのOSの場合)を使用してAndroidスタジオを実行する必要があります。このエラーの詳細については、コマンドプロンプトウィンドウを参照してください。
私の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によって生成されます。これを次のものに置き換えることで、これを新しいgraleバージョンに変更しました。
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.Android.tools.build:gradle:0.13.+'
}
}
そしてその後、プロジェクトは構築されるでしょう。
AndroidManifest.xmlに追加する必要がある2つのもの:
1日目:マニフェストタグにxmlns:tools = "http://schemas.Android.com/tools"を追加してください
<manifest xmlns:Android=".........
package="...........
xmlns:tools="http://schemas.Android.com/tools">
第2回:ツールを追加:applicationタグにreplace = "icon"
<application
Android:icon=.........
Android:label=.......
tools:replace="icon">
変更してみてください。
<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" />
私の場合、それは私のマニフェストファイルに重複した許可があり、libraryのminSDKVersionが私のプロジェクトのminSDKVersionより大きかったためです。私はちょうどそのminSDKVersionを等しくして成功を収めてコンパイルしました。
このエラーは、マニフェストファイルの属性が空のままになっていることが原因の可能性があります。
例:
<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"
に変更されると、修正されます。
Android Studio 3.5でこの問題を解決するには、プロジェクトをクリーニングして再構築しました。
[ビルド]-> [プロジェクトのリビルド]をクリックします。
多分あなたはいくつかの重複した活動をしている
このような:
<activity Android:name=".register.RegisterStepsActivity" />
....
<activity Android:name=".register.RegisterStepsActivity" />
それらの1つをコメントするだけ
必要なSDKバージョンがインストールされていないため、これらのエラーが発生しました。 build.gradle/Android Manifestファイルに存在するSDKのバージョンをダウンロードしてインストールした後、それは解決しました。
compile 'com.github.wenchaojiang:AndroidSwipeableCardStack:0.1.1'
これが追加した依存関係である場合は、それを次のように変更します。
compile 'com.github.wenchaojiang:AndroidSwipeableCardStack:0.1.4'
そしてtarget sdk
が15より小さくならないようにしてください。
私は別の理由で問題に出会った。
私はAndroid Studioでアプリを構築していましたが、アプリモジュールと別のモジュールがありました。 Appモジュールは他のモジュールに依存していました。
しかし、appモジュールの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>
問題が解決しました。
私の場合は、タグを2回書いていました。それが私の唯一の間違いでした
<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つだけです。それが私が現時点で知っていることです:)
Android Manifestファイル内の同じアクティビティの重複宣言。
私の場合、マニフェストファイルに無効なタグ構造があり、開いたアクティビティが閉じていましたが、ファイルの正確性を無効にする鉱石activities (...)
があり、それを見つけるのにかなり2時間かかりました<activity>
。
「gradle.properties」に次の2行を追加するだけです。
Android.useAndroidX=true
Android.enableJetifier=true