概述:

我利用eclipse 的git插件clone github上的远程项目(C++)到本地时遇到一个问题:clone下来的项目没有C++特性,无法使用open declaration等操作,下面是解决这个问题的办法。

问题:

在eclipse cdt中import github的远程项目,操作是

import ->Git/projects from git ->Clone URI

导入的项目可以switch branch, 但就是不能打开函数的声明,实际上eclipse的一切快捷键都不能用了

我看了下导入项目的preference,发现连c++ build选项都没有,觉得问题可能在于导入的项目没有语言(c++, c, java等等)信息,以至于被eclipse当成没有语言属性的general项目,快捷键这种依赖于编程语言的东西自然也就没办法用了

解决办法:

依然导入远程的github project到本地,在mac os下就是放在~/git/remoteproject下,linux应该一样的。然后import C/C++ -> Existing code as makefile project -> Browser ->选中remoteproject,也就是说我们手动创建C++项目,不再依靠egit自动生成

新创建的项目需要自己取项目名字(直接从github导入的话名字不需要自己取得),除此之外一切特征都和我们期望的一致,可以switch to other branch, function declaration, call hierarchy都可以用了

值得注意的是,有些项目导进来后可以直接用,有些就需要按照上述的流程走一遭,不知道为何

参考:

中文没找到相关资料,英文的话找到了这个

eclipse m2e: can't open declarations after importing maven projects

问题的描述和我几乎一样,但是没人回答:(

下面这个up主的问题和我也差不多,VonC同学回答给了我解决问题的启发(他的最后一句话)

You could also use the "Import existing project" option, if your GitHub repo had versioned the .projectand .classpath file, but that may not be the case here.

Importing a GitHub project into Eclipse

Eclipse cdt解决github导入的项目无法打开声明的bug (cannot open declaration)的更多相关文章

  1. 解决 Github 打不开或打开很慢的问题

    解决 Github 打不开或打开很慢的问题 方法一 一.确定 github 网站的 ip 打开网址:http://github.com.ipaddress.com/ 192.30.253.112 gi ...

  2. 使用eclipse从github导入maven项目

    github给的地址是类似https://github.com/xxx/se.git格式; 如何将其用eclipse导入呐? 第一步, Import Projects from Git 导入成功后 第 ...

  3. Eclipse执行import命令导入maven项目时报错:Add a version or custom suffix using "Name template" in "Advanced" settings

    新建了两个maven项目在E盘workspace目录,后面移到workspace/app_engine目录下提交svn,再通过Eclipse的File->import导入时报错了: Projec ...

  4. 解决IDEA导入Myclipse项目的时候没有识别为Web项目的问题

    IDEA在导入一个MyEclipse新建的Web项目的时候,一般会正确检测这个项目是什么项目.不过有时候会出现各种问题. 1. 出现一些Jar包不存在的问题,一般是servlet-api这样的包不存在 ...

  5. 解决idea导入maven项目缺少jar包的问题

    之前一直用的elipse,现在用idea不熟悉,这里记录一下.这里以idea2017为例. 导入elipse的maven项目,提示缺少jar包,肯定是idea没有给你导包. 第一步,首先确认自己的id ...

  6. idea从github导入maven项目

    原文地址:https://blog.csdn.net/dianyongpai3113/article/details/82784716 之后next.finish就好了

  7. idea导入(import)项目和打开(open)项目的区别

    前言: 每次接手老项目,都得从git或svn下载下来,但是如果之前的项目不是用idea写的怎么办,可是你又习惯啦idea,那你必须把项目在idea上跑起来,那是用import还是用open呢,如何抉择 ...

  8. eclipse导入maven项目后依赖jar包更新问题->update project按钮

    eclipse导入maven项目后依赖jar包更新问题 1.eclipse有专门的导入maven项目按钮,file-import-maven project,eclipse会自动查找指定路径下的pom ...

  9. idea导入maven项目 傻瓜都能看懂

    1.找到你需要导入的项目 2.打开idea ------------------------------------------------------------------------------ ...

随机推荐

  1. dapper支持操作函数和事物

    dapper除了支持基础的CURD.存储过程以外,还支持操作函数和事物. dapper操作函数的代码如下: using Dapper; using System; using System.Colle ...

  2. 《C++程序设计教程——给予Visual Studio 2008》读书笔记3章

    CLR(Common Language Runtime,通用运行时),负责在执行时管理代码,提供内存管理和线程管理等核心服务,同时又确保代码的安全性和准确性.

  3. HwPointEventFilter: do not support AFT because of no config华为手机进入工程菜单

    在调试时应用报出HwPointEventFilter: do not support AFT because of no config 是因为华为系统里设置了不打印log 解决方法是在拨号界面输入*# ...

  4. sparkr跑通函数 包含排序

    spark1.4.0的sparkR的思路:用Spark从大数据集中抽取小数据(sparkR的DataFrame),然后到R里分析(DataFrame). 这两个DataFrame是不同的,前者是分布式 ...

  5. [hadoop读书笔记] 第四章 Hadoop I/O操作

    P92 压缩 P102 序列化 序列化:将结构化对象转为字节流便于在网上传输或写到磁盘进行永久性存储的过程 用于进程之间的通信或者数据的永久存储 反序列化:将字节流转为结构化对象的逆过程 Hadoop ...

  6. Qt中与文件目录相关操作

    一.与文件目录操作有关操作. Qt中与文件目录相关的操作在QDir中,需加入#include <QDir>语句. QDir::drives()是列出电脑根目录下的所有目录,返回的是QFil ...

  7. python 读写二进制文件实例

    本程序,首先写入一个矩阵到二进制文件中,然后读取二进制文件恢复到另外一个矩阵中. #coding:utf--8 #https://www.cnblogs.com/cmnz/p/6986979.html ...

  8. 珍藏40个android应用源码分享

    1.高仿京东商城源码http://www.apkbus.com/android-115203-1-1.html 2.抽屉demohttp://www.apkbus.com/android-115205 ...

  9. K-SVD算法

    它与K-mean算法原理上是类似的: K-mean 算法: (之前写过:http://www.cnblogs.com/yinheyi/p/6132362.html) 对于初始化的类别中心,可以看作初化 ...

  10. JDBC Statement对象执行批量处理实例

    以下是使用Statement对象的批处理的典型步骤序列 - 使用createStatement()方法创建Statement对象. 使用setAutoCommit()将自动提交设置为false. 使用 ...