起因
包装の例外
ネイティブ プラグインの開発後、カスタム プラグインのパッケージ化プロセス中に次の例外が発生します。
異常な内容
Appid: __UNI__EBAxxxx
FAILURE: ビルドが例外で失敗しました。
* 問題:
タスク ':app:checkReleaseDuplicateClasses' の実行に失敗しました。
> com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable の実行中にエラーが発生しました……
……
* 例外:
org.gradle.api.tasks.TaskExecutionException: タスク ':app:checkReleaseDuplicateClasses' の実行に失敗しました。
org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.lambda$executeIfValid$1(ExecuteActionsTaskExecuter.java:145)
で org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:282)
で org.gradle. api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:143)
org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:131)
org.gradle.api.internal. tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:77)
org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46) で
org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:51)で
org.gradle .api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
org.gradle.api.internal .tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77) で
org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
で org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)で……
分析と解決
情報を検索したところ、問題はパッケージの依存関係が繰り返されたことが原因であることがわかったので、思い出した: ネイティブ プラグイン パッケージ内の古いバージョンのプラグインが削除されておらず、uniapp が読み込まれていたはずです。オンラインでパッケージ化したときに一緒になって依存関係が繰り返されたので、削除するだけ無駄なプラグインの後に再パッケージ化するだけです。