在github上下载的工程文件导入的时候总是遇到各种各样的问题,昨天晚上瞎忙一晚上查资料没搞定。早上找高手请教了一下,一起弄了好一会终于解决了,这里记录一下方法解决的具体方法步骤。

本方法适用于离线导入github工程,没有使用maven和egit工具。

测试项目以github上的一个下拉刷新的listview为例。

第一步:下载项目的zip压缩包解压到你的工作空间(其它地方也行只要能找到)

第二步:导入android工程:



选择你的要导入的项目:


点击Finish完成导入,工程目录展开如下:


第三步:设置编译环境

一般情况下,第二步结束后,看知道这么多错误就纠结了。这里有个3问题:

1.libraryproject是作为一个library为PullToRefreshListViewSampleActivity提供第三方库的支持,但是eclispe导入后默认没有把它设为库和PullToRefreshListViewSampleActivity关联起来,所以会看到PullToRefreshListViewSampleActivity的src中的java文件导入包报错。

2.PullToRefreshListViewSampleActivity和libraryproject两个工程的java文件中都会提示重写的函数错误需要删除函数开头的“@Override”。删除以后确实可以解决问题。但是根本原因是,java的jdk版本问题,我导入工程以后默认使用的事jdk1.5。要解决这个问题需要把jdk设置问1.6,1.6版本的JDK比较稳定,推荐使用。

3.还能够明显看到PullToRefreshListViewSampleActivity工程没有android的sdk库支持。需要手动设置编译环境。

下面就针对以上三个问题进行设置:

解决第一个问题,首先,设置libraryproject做为库支持



解决第二个问题,把libraryproject的java编译环境换为jdk1.6



对PullToRefreshListViewSampleActivity进行设置,解决第二个问题,把PullToRefreshListViewSampleActivity的编译环境设为jdk1.6



解决第一个问题,选择PullToRefreshListViewSampleActivity所需的第三方支持库,这个选择必须在libraryproject设置为“is library”后才可以出现选择框。



解决第三个问题,选择(添加)PullToRefreshListViewSampleActivity的android sdk编译环境。我选的是Adroid  4.2。




所有的设置完成以后,工程项目的配置也就结束了。下面是设置完成后的项目列表。直接就可以正常运行了。



后记:

      配置完整个项目后,我想了一下为什么github上的想么要这么设置。为什么不是直接下载下来导入用就可以了呢?还需要这么麻烦的配置。我认为,这充分体现了开源项目的共享和兼容特征。一个项目的编译环境根据每个人的电脑设置可能会有所差别。比如,在不同的操作系统上开发的项目。mac,linux,windows等平台上都可以搭建android开发环境,但是难免会有一些系统依赖性。为了让项目能在不同的平台上都能正常的运行起来,那么就直接发布核心的代码,项目环境让开发人员自己搭建。这样依赖关系就大大降低了。这个人的一些理解。

GitHub上项目配置和导入eclispe的问题解决的更多相关文章

  1. iOS 本地项目上传github,github管理项目配置

    一.注册github账号   首先需要注册一个github账号,注册地址:https://github.com 接着会来到这 然后会收到一封github发的邮件,进入邮箱验证 二.创建个人的githu ...

  2. 修改GitHub上项目语言显示的问题

    问题 最近将自己写的博客放到github上了.由于使用了富文本编辑器.jQuery.Bootstrap等第三方插件,导致js.css等代码远远超过你自己写的代码. 于是也就成这样了 而且这里也显示Ja ...

  3. 修改GitHub上项目语言显示

    问题 最近将自己以Scala为主语言写的博客放到github上了.由于使用了富文本编辑器.jQuery.Bootstrap等第三方插件,导致js.css等代码远远超过你自己写的代码. 于是也就成这样了 ...

  4. 花20分钟写的-大白话讲解如何给github上项目贡献代码

    原文地址:http://site.douban.com/196781/widget/notes/12161495/note/269163206/ 本文献给对git很迷茫的新手,注意是新手,但至少会点基 ...

  5. (转)大白话讲解如何给github上项目贡献代码

    转自:https://site.douban.com/196781/widget/notes/12161495/note/269163206/ 2013-03-30 22:53:55   本文献给对g ...

  6. 大白话讲解如何给github上项目贡献代码

    本文献给对git很迷茫的新手,注意是新手,但至少会点基本操作,有点基本概念的新手,我不会从怎么用github和git是什么开始讲的.如果作为新手你看书又看不进去,原理又太复杂,又没有直接了当告诉我们怎 ...

  7. 如何删除github上项目的文件

    1. 你要有前面一章的开发平台和github插件,下面就是基于前面来做的. 如何删掉你github上的文件呢?想必你的电脑有一个下载的git工具了,如果还是没有的话,请用npm下载一个git.这是我已 ...

  8. 通过SSH key获取GitHub上项目,导入到IDEA中

    1.在Windows上安装Git 在Windows上使用Git,可以从Git官网直接下载安装程序,然后按默认选项安装即可 安装完成后,在开始菜单里找到“Git”->“Git Bash”,或者在文 ...

  9. github上项目的目录结构说明

    build 构建脚本 dist 编译出来的发布版 docs 文档 examples 示例文件 src 源码 test 测试脚本 .babelrc Babel 交叉编译的配置 .eslintrc ESL ...

随机推荐

  1. android的fragments管理

    FragmentManager 为了管理Activity中的fragments,需要使用FragmentManager. 为了得到它,需要调用Activity中的getFragmentManager( ...

  2. 算法之旅,直奔<algorithm>之十 count_if

    count_if(vs2010) 引言 这是我学习总结<algorithm>的第十篇,这个重要的地方是设置条件.用的还是蛮多的.(今天下午挺恶心的,一下午就做一个面试题,调代码调傻了... ...

  3. Data Annotation

    Data Annotation 什么是Data Annotation ? 如何使用 ? 自定义Validate Attribute EF  Db first中使用Data Annotation asp ...

  4. 【译】在ASP.NET中创建PDF-iTextSharp起步

    原文 [译]在ASP.NET中创建PDF-iTextSharp起步 .Net framework 中自身并不包含可以和pdf打交道的方法.所以,当你需要你的ASP.Net Web应用程序中包含创建或与 ...

  5. linux服务之NFS和SAMBA服务

    这几种网络文件传输最适合局域网.网络中用FTP 一:NFS服务 nfs(network file system)网络文件系统,改服务依赖于rpcbind服务.client通过rpc訪问server端的 ...

  6. 蛋疼的Apple IOS Push通知协议

    简单介绍 Apple Push通知机制事实上非常easy,就是Apple的APNsserver做为中间人,把消息推送到相应的设备上. 一张来自Apple文档的图: 当然,示意图看起来简单,可是另一些实 ...

  7. 为什么出现Wide character in print at a14.pl line 41

    [root@wx03 ~]# cat a14.pl use Net::SMTP; use LWP::UserAgent; use HTTP::Cookies; use HTTP::Headers; u ...

  8. DDD领域驱动设计的理解

    DDD领域驱动设计的理解 从遇到问题开始 当人们要做一个软件系统时,一般总是因为遇到了什么问题,然后希望通过一个软件系统来解决. 比如,我是一家企业,然后我觉得我现在线下销售自己的产品还不够,我希望能 ...

  9. Qt Creator键盘快捷键速查

    原地址:http://bbs.qter.org/forum.php?mod=viewthread&tid=904&extra=page%3D2 一般操作的键盘快捷键 操作 快捷键 操作 ...

  10. delphi与汇编

    我一直认为Delphi功能与C++相比毫不逊色,提供了丰富的控件和类.全部API以及嵌入的汇编.最近小弟在把C版的Huffman压缩改用Delphi写时,顺便“研究”了一下Delphi的位操作和嵌入式 ...