美文网首页
mk错误:找不到符号

mk错误:找不到符号

作者: duoduo7628 | 来源:发表于2020-06-17 15:32 被阅读0次

    主要错误信息找不到符号

    错误日志:

    v6x/apps/aispeech/core_aistudy/src/com/noahedu/youyou/view/activity/AiSpeechBaseActivity.java:261: 错误: 找不到符号
                version = speechManager.getAiSpeechVersion();
                                       ^
      符号:   方法 getAiSpeechVersion()
      位置: 类型为AiSpeechManager的变量 speechManager
    v6x/apps/aispeech/core_aistudy/src/com/noahedu/youyou/view/activity/AiSpeechBaseActivity.java:269: 错误: 找不到符号
                speechManager.startUpdateProductZip();
                             ^
      符号:   方法 startUpdateProductZip()
      位置: 类型为AiSpeechManager的变量 speechManager
    v6x/apps/aispeech/noah_intelligentStudy/src/com/noahedu/youyou/view/activity/MainActivity.java:4442: 错误: 方法不会覆盖或实现超类型的方法
        @Override
        ^
    v6x/apps/aispeech/noah_intelligentStudy/src/com/noahedu/youyou/view/activity/MainActivity.java:4473: 错误: 方法不会覆盖或实现超类型的方法
        @Override
        ^
    v6x/apps/aispeech/noah_intelligentStudy/src/com/noahedu/youyou/view/fragment/setting/VersionIfonFragment.java:51: 错误: 找不到符号
            introText.setText("当前版本为:V_" + mSpeechManager.getAiSpeechVersion() + (SetttingUtil.isCamera800(getActivity()) ? "B" : "W"));
                                                         ^
      符号:   方法 getAiSpeechVersion()
      位置: 类型为AiSpeechManager的变量 mSpeechManager
    
    p712/apps/PenWrite/PenWriteP712/noah_screenShotNote/src/com/noahedu/ssnote/note/NoteView.java:302: 错误: 找不到符号
            if (id == R.id.note_confirm) {
                          ^
      符号:   变量 note_confirm
      位置: 类 id
    p712/apps/PenWrite/PenWriteP712/noah_screenShotNote/src/com/noahedu/ssnote/note/NoteView.java:305: 错误: 找不到符号
            } else if (id == R.id.note_cancel) {
                                 ^
      符号:   变量 note_cancel
      位置: 类 id
    p712/apps/PenWrite/PenWriteP712/noah_screenShotNote/src/com/noahedu/ssnote/note/NoteView.java:308: 错误: 找不到符号
            } else if (id == R.id.note_delete) {
                                 ^
      符号:   变量 note_delete
      位置: 类 id
    p712/apps/PenWrite/PenWriteP712/noah_screenShotNote/src/com/noahedu/ssnote/note/NoteView.java:311: 错误: 找不到符号
            } else if (id == R.id.note_top_area) {
                                 ^
      符号:   变量 note_top_area
      位置: 类 id
    

    解决:
    此类错误主要分为两种
    1.找不到方法
    2.找不到资源(id theme string dimen等)

    第一种:
    就是那个类没有那个方法,添加方法就可以了。
    需要注意的是 此类可能是一个公共库的类,本地添加了,
    但是没有上传到library svn (比如 http://192.168.1.186/svn/p381/library),还是会报错。

    也有可能是因为版本变化,该类或者该方法没有了,比如:import junit.framework.Assert;
    在junit4.12之后,Assert就过时了,提供了TestCase来取代;import junit.framework.TestCase;
    不使用也可以直接去掉

    第二种:
    多出现在多moudle项目中
    资源可能不在默认路径 比如资源默认路径是:LOCAL_RESOURCE_DIR := res
    但是资源可能存在 LOCAL_RESOURCE_DIR := core_connection/src/main/res \

    所以要将所用到的资源都声明 添加到 LOCAL_RESOURCE_DIR 比如:
    指定资源文件:

    LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/noah_screenShotNote/res \
                          $(LOCAL_PATH)/noah_studynote/res \
                          $(LOCAL_PATH)/noah_copybook/res \
                          $(LOCAL_PATH)/noah_notepad/res \
                          $(LOCAL_PATH)/noah_penEntry/res \
                          $(LOCAL_PATH)/noah_penPicker/res \
                          $(LOCAL_PATH)/core_connection/src/main/res \
                          $(LOCAL_PATH)/penwrite/src/main/res \
                          $(LOCAL_PATH)/base_pro_common/src/main/res
    

    注意:这样之后可能仍然提示找不到!(这很有可能是编译器的问题)
    p712/apps/PenWrite/PenWriteP712/noah_screenShotNote/src/com/noahedu/ssnote/note/NoteView.java:302: 错误: 找不到符号
    if (id == R.id.note_confirm) {
    ^
    符号: 变量 note_confirm
    位置: 类 id

    解决方法: 采用改名的方式
    1.全局查找 R.id.note_confirm 有没有其他地方定义了一样的 id,然后改个名字。
    2.找到R.id.note_confirm所在的布局(我这里是note.xml),然后全局搜索note.xml。如果有相同的改成不同。

    我这里就是有很多叫做note.xml的布局。



    将note改个不一样的名字就好了

    --来自 shaoquanwei share

    相关文章

      网友评论

          本文标题:mk错误:找不到符号

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