美文网首页
关于gradle编译报错:Process 'command 'J

关于gradle编译报错:Process 'command 'J

作者: 不朽大叔丶 | 来源:发表于2019-10-10 18:36 被阅读0次

    报错信息:
    Process 'command 'J:\develop\studio\android-sdk-windows\build-tools\28.0.3\aapt.exe'' finished with non-zero exit value 1
    看到这个错的时候也是懵的一逼,什么啊 ?error信息呢 ?神经病吧?...

    如果你的报错也这样,别急往下看!
    1.上面的错误信息只是告诉你 编译器大爷遇到毛病了,至于是什么毛病,还得请砖家会诊一下。
    掌声欢迎砖家 (手动啪啪啪ing)!

    2.在studio的右侧边,有一个gradle,打开。 如下图所示:


    image.png

    3.然后看下图箭头所指


    image.png

    4.这个时候,看下图


    image.png

    5.完整的错误信息:
    AGPBI: {"kind":"error","text":"No resource found that matches the given name (at \u0027layout_above\u0027 with value \u0027@id/bottomBar\u0027).","sources":[{"file":"...\main\res\layout\activity_main.xml","position":{"startLine":23,"startColumn":30,"startOffset":731,"endColumn":43,"endOffset":744}}],"original":"","tool":"AAPT"}

    下面是重点

    分析上面的log,可以看出是因为在activity_main.xml布局文件中这个id叫bottomBar的兄弟出毛病了,
    根据提供的信息找到这一行后,发现代码是这样的


    image.png

    根据编译机制,我们知道代码是从第一行到最后一行 依次执行编译的。

    上图的代码中,FrameLayout中有一个属性:android:layout_above="@id/bottomBar"

    当执行这一句的时候,它的value中所用到的id “bottomBar” 还没有还没有创建,所以找不到这个资源,所以就报错了!!!
    修改:
    由于父控件是RelativeLayout,所以就把他两换个位置,让bottomBar先创建出来,在让FrameLayout引用,这样就可以了!


    image.png

    这样在编译一下,就没有问题 了!
    对于这个报错,大多数都是布局文件中的错误,当然也可能还有别的。只能是见招拆招!见坑爬坑!

    相关文章

      网友评论

          本文标题:关于gradle编译报错:Process 'command 'J

          本文链接:https://www.haomeiwen.com/subject/xiavyctx.html