代码之家  ›  专栏  ›  技术社区  ›  NullPointerException

使用Gradle编译时出错(找不到下载的依赖项)

  •  5
  • NullPointerException  · 技术社区  · 7 年前

    我开发了一个应用程序生成系统,通过命令行Gradle编译命令重新生成应用程序。

    在我的Windows Server 2008中,我在更新到最新的Gradle版本和Gradle插件版本后遇到了一个问题。

    编译时出现以下错误:

    C:\Windows\System32\config\systemprofile\.gradle\caches\transforms-1\files-1.1\appcompat-v7-25.0.0.aar\e93435c34d5cae8b6677dcef529711a5\res\drawable-xxhdpi-v4\abc_text_select_handle_middle_mtrl_light.png: error: file not found.
    
    C:\Windows\System32\config\systemprofile\.gradle\caches\transforms-1\files-1.1\appcompat-v7-25.0.0.aar\e93435c34d5cae8b6677dcef529711a5\res\drawable\abc_btn_colored_material.xml: error: file not found.
    
    C:\Windows\System32\config\systemprofile\.gradle\caches\transforms-1\files-1.1\appcompat-v7-25.0.0.aar\e93435c34d5cae8b6677dcef529711a5\res\drawable-hdpi-v4\abc_textfield_search_default_mtrl_alpha.9.png: error: file not found.
    
    and a lot more of errors like those...
    

    我不确定为什么会出现这个错误,因为文件已正确下载,并且正确定位在该方向。

    它的路径长度为204个字符,因此应该不会超过NTFS Windows文件系统上255个路径字符的限制。

    是否可以更改Gradle下载其缓存依赖项的位置?这个问题是由这个还是其他原因引起的?

    3 回复  |  直到 4 年前
        1
  •  13
  •   NullPointerException    7 年前

    最后,我解决了将环境变量GRADLE\u USER\u HOME在windows中设置为c:/GRADLE缓存的问题

    因此,它最终与文件路径长度有关

        2
  •  0
  •   androidmalin    7 年前

    我在windows jenkins中遇到了同样的错误

    我解决了这个错误。

    gradle assembleDebug -g C:\gradle-cache
    

    -g:

    gradle -h
    
    -g, --gradle-user-home    Specifies the gradle user home directory
    
        3
  •  0
  •   M. Rasit Eksi    6 年前

    路径长度导致故障。

    我定义了

    "-Dorg.gradle.user.home=%GRADLE_USER_HOME%"
    

    在gradle运行参数中,它解决了这个问题。