Gradle文件路径对于Windows来说太长了

Jus*_*Sid 9 android gradle android-ndk

好吧,我已经看到了类似的问题,但我还没有找到一个令人满意的解决方案,所以我开了一个新的.问题是Gradle生成了疯狂的长文件路径,超过了Windows上的240路径限制.问题是,一旦arm-linux-androideabi-ar运行我得到这样的错误:

arm-linux-androideabi-ar: C:/tmp/ATC/intermediates/ndkBuild/debug/obj/local/armeabi-v7a/objs-debug/[redacted]/D_/[redacted]/android/[redacted]_ATC/src/main/jni/__/__/__/__/[redacted]/src/main/jni/__/__/__/__/__/source_code/app/missions/mission_utils/mission_data/mission_difficulty.o: No such file or directory
make: *** [C:/tmp/ATC/intermediates/ndkBuild/debug/obj/local/armeabi-v7a/lib[redacted].a] Error 1
Run Code Online (Sandbox Code Playgroud)

我已经buildDir将gradle项目更改为C:/ tmp并尽可能多地删除它.我还将项目本身移动到驱动器的根目录,以及启用Windows 10长路径,这是我找到的唯一建议.然而,看着路,才像摇篮变成..INT __,而不是把它变成一个真正的路径,这样的路径,文件也可以同样是:

C:/tmp/ATC/intermediates/ndkBuild/debug/obj/local/armeabi-v7a/objs-debug/[redacted]/D_/[redacted]/android/[redacted]_ATC/source_code/app/missions/mission_utils/mission_data/mission_difficulty.o

仍然是一个字符串,让我感到疯狂,但它暂时会解决我的问题.是否有可能说服Gradle生成这些路径?还有什么我可以做的吗?视窗10长路径的支持是已启用

tuk*_*kan 3

Windows 长路径支持已经存在(win10,甚至在 Win7 上),但工具还没有。

虽然这根绳子让我觉得长得离谱,但它暂时可以解决我的问题。是否有可能说服 Gradle 生成这些类型的路径?

从来没听说过。我认为路径本身不是问题,如果您使用长路径,重要的是前缀。

我还有什么可以做的吗?Windows 10 长路径支持已启用。

我认为 Windows 10 长路径支持对您的情况没有帮助。问题是,您构建的任何内容都arm-linux-androideabi-ar没有前缀,\\?\Windows 需要它来识别它是一条长路径。

甚至还有针对您问题的开票 #711。解决方案与clang++类似。

我想到的解决方法:

它不是一个“纯粹的”Windows 解决方案。一种是使用Windows 10 Linux 子系统。第二种选择是使用MSYS2并特定于Gradle。