2020-03-06

[Cocos Creator] 編譯Android APK失敗的可能原因 Execution failed for task

Cocos Creator 編譯Android APK失敗的可能原因 Execution failed for task
Cocos Creator 版本: 2.3.1
NDK版本:r21
Android SDK:29
編譯方式: default
問題: Windows環境下編譯Android APK 失敗
問題原因: Windows環境路徑長度超過256會錯誤


修正方式: 將輸出的Build Path路徑移置根目錄,減少路徑

另解1: 修改登錄檔
1、按下WIN+R鍵,然後輸入 regedit
2、電腦\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem\
3、LongPathsEnabled  0=>1
4、重新開機

另解2: 修改系統設定
1、按下WIN+R鍵,然後輸入 Gpedit.msc
2、打開本機群組原則編輯器後,依次展開:
電腦設定>系統管理範本> >系統>>檔案系統;
3、雙擊 「啟用Win32長路徑」(NTFS長路徑) 設置為啟用即可。
4、重新開機

另解3: 安裝patch
wsLongPaths
用3.17編譯lua工程,路徑太深報錯

參考資料:
求助:cocoscreate2.0使用模板default編譯不通過
求助:Hello World初始項目編譯安卓報錯 
[教學]在Windows 10中突破260字元的檔案路徑長度限制


錯誤訊息參考1:

Starting process 'command 'C:\App\Android\ndk\android-ndk-r19c\ndk-build.cmd''. Working directory: C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\runtime-src\proj.android-studio\game Command: C:\App\Android\ndk\android-ndk-r19c\ndk-build.cmd NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\runtime-src\proj.android-studio\game\jni\Android.mk NDK_APPLICATION_MK=C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\runtime-src\proj.android-studio\game\jni\Application.mk APP_ABI=arm64-v8a NDK_ALL_ABIS=arm64-v8a NDK_DEBUG=0 APP_PLATFORM=android-16 NDK_OUT=C:/work/projects/cocos/NewProjectJS231/build/jsb-default/frameworks/runtime-src/proj.android-studio/game/build/intermediates/ndkBuild/feature/release/obj NDK_LIBS_OUT=C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\runtime-src\proj.android-studio\game\build\intermediates\ndkBuild\feature\release\lib NDK_TOOLCHAIN_VERSION=clang NDK_MODULE_PATH=C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\cocos2d-x;C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\cocos2d-x\cocos;C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\cocos2d-x\external -j6 NDK_DEBUG=0 C:/work/projects/cocos/NewProjectJS231/build/jsb-default/frameworks/runtime-src/proj.android-studio/game/build/intermediates/ndkBuild/feature/release/obj/local/arm64-v8a/libcocos2djs.so
Successfully started process 'command 'C:\App\Android\ndk\android-ndk-r19c\ndk-build.cmd''
Android NDK: WARNING: Unsupported source file extensions in C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\cocos2d-x/cocos/Android.mk for module cocos2dx_static    
Android NDK:   renderer/memop/RecyclePool.hpp    
[arm64-v8a] Compile++      : cocos2djs_shared <= AppDelegate.cpp
[arm64-v8a] Compile++      : cocos2dx_static <= inspector_socket_server.cc
make: *** [C:/work/projects/cocos/NewProjectJS231/build/jsb-default/frameworks/runtime-src/proj.android-studio/game/build/intermediates/ndkBuild/feature/release/obj/local/arm64-v8a/objs/cocos2dx_static/scripting/js-bindings/jswrapper/v8/debugger/inspector_socket_server.o] Error 3
make: *** Waiting for unfinished jobs....

> Task :game:externalNativeBuildReleaseFeature FAILED
:game:externalNativeBuildReleaseFeature (Thread[Task worker for ':',5,main]) completed. Took 2.297 secs.
:hello_world:packageRelease (Thread[Daemon worker,5,main]) completed. Took 8.347 secs.
101 actionable tasks: 17 executed, 84 up-to-date
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':game:externalNativeBuildReleaseFeature'.
> Build command failed.
  Error while executing process C:\App\Android\ndk\android-ndk-r19c\ndk-build.cmd with arguments {NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\runtime-src\proj.android-studio\game\jni\Android.mk NDK_APPLICATION_MK=C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\runtime-src\proj.android-studio\game\jni\Application.mk APP_ABI=arm64-v8a NDK_ALL_ABIS=arm64-v8a NDK_DEBUG=0 APP_PLATFORM=android-16 NDK_OUT=C:/work/projects/cocos/NewProjectJS231/build/jsb-default/frameworks/runtime-src/proj.android-studio/game/build/intermediates/ndkBuild/feature/release/obj NDK_LIBS_OUT=C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\runtime-src\proj.android-studio\game\build\intermediates\ndkBuild\feature\release\lib NDK_TOOLCHAIN_VERSION=clang NDK_MODULE_PATH=C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\cocos2d-x;C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\cocos2d-x\cocos;C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\cocos2d-x\external -j6 NDK_DEBUG=0 C:/work/projects/cocos/NewProjectJS231/build/jsb-default/frameworks/runtime-src/proj.android-studio/game/build/intermediates/ndkBuild/feature/release/obj/local/arm64-v8a/libcocos2djs.so}
  Android NDK: WARNING: Unsupported source file extensions in C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\cocos2d-x/cocos/Android.mk for module cocos2dx_static    
  Android NDK:   renderer/memop/RecyclePool.hpp    
  [arm64-v8a] Compile++      : cocos2djs_shared <= AppDelegate.cpp
  [arm64-v8a] Compile++      : cocos2dx_static <= inspector_socket_server.cc
  make: *** [C:/work/projects/cocos/NewProjectJS231/build/jsb-default/frameworks/runtime-src/proj.android-studio/game/build/intermediates/ndkBuild/feature/release/obj/local/arm64-v8a/objs/cocos2dx_static/scripting/js-bindings/jswrapper/v8/debugger/inspector_socket_server.o] Error 3
  make: *** Waiting for unfinished jobs....


* Try:
Run with --stacktrace option to get the stack trace. Run with --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 38s

執行命令出錯,返回值:1。


錯誤訊息參考2:

Build command failed.
Error while executing process C:\App\Android\ndk\android-ndk-r21\ndk-build.cmd with arguments {NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\runtime-src\proj.android-studio\game\jni\Android.mk NDK_APPLICATION_MK=C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\runtime-src\proj.android-studio\game\jni\Application.mk APP_ABI=arm64-v8a NDK_ALL_ABIS=arm64-v8a NDK_DEBUG=1 APP_PLATFORM=android-16 NDK_OUT=C:/work/projects/cocos/NewProjectJS231/build/jsb-default/frameworks/runtime-src/proj.android-studio/game/build/intermediates/ndkBuild/feature/debug/obj NDK_LIBS_OUT=C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\runtime-src\proj.android-studio\game\build\intermediates\ndkBuild\feature\debug\lib NDK_TOOLCHAIN_VERSION=clang NDK_MODULE_PATH=C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\cocos2d-x;C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\cocos2d-x\cocos;C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\cocos2d-x\external -j6 NDK_DEBUG=1 C:/work/projects/cocos/NewProjectJS231/build/jsb-default/frameworks/runtime-src/proj.android-studio/game/build/intermediates/ndkBuild/feature/debug/obj/local/arm64-v8a/libcocos2djs.so}
Android NDK: WARNING: Unsupported source file extensions in C:\work\projects\cocos\NewProjectJS231\build\jsb-default\frameworks\cocos2d-x/cocos/Android.mk for module cocos2dx_static    
Android NDK:   renderer/memop/RecyclePool.hpp    
[arm64-v8a] Compile++      : cocos2dx_static <= inspector_socket_server.cc
C:/App/Android/ndk/android-ndk-r21/build//../toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android-ar: C:/work/projects/cocos/NewProjectJS231/build/jsb-default/frameworks/runtime-src/proj.android-studio/game/build/intermediates/ndkBuild/feature/debug/obj/local/arm64-v8a/objs-debug/cocos2dx_static/scripting/js-bindings/jswrapper/v8/debugger/inspector_socket_server.o: No such file or directory
make: *** [C:/App/Android/ndk/android-ndk-r21/build//../build/core/build-binary.mk:600: C:/work/projects/cocos/NewProjectJS231/build/jsb-default/frameworks/runtime-src/proj.android-studio/game/build/intermediates/ndkBuild/feature/debug/obj/local/arm64-v8a/libcocos2d.a] Error 1
[arm64-v8a] StaticLibrary  : libcocos2d.a
make: *** Waiting for unfinished jobs....
[arm64-v8a] StaticLibrary  : libcpufeatures.a
[arm64-v8a] StaticLibrary  : libcocos2dandroid.a
[arm64-v8a] Compile++      : editor_support_static <= jsb_cocos2dx_editor_support_auto.cpp





沒有留言:

張貼留言