http://blog.sina.com.cn/s/blog_7e3fa7ec01018clh.html
http://blog.sina.com.cn/s/blog_7e3fa7ec01018clh.html
http://blog.sina.com.cn/s/blog_7e3fa7ec01018clh.html
http://blog.sina.com.cn/s/blog_7e3fa7ec01018clh.html
标签: it |
.project是项目文件,项目的结构都在其中定义,比如lib的位置,src的位置,classes的位置
.classpath的位置定义了你这个项目在编译时所使用的$CLASSPATH
这些文件你用文本编辑器就能察看了
在一个项目中点刷新的目的是为了更新.project文件中的文件清单,让你把不通过eclipse提交到项目的文件显示出来
.classpath 文件
从数据上我们容易看出,上面描述了工程的依赖文件:
总体上说这个文件就是配置整个工程的运行环境。
.project 文件
从数据上看,我们可以了解到这些配置主要是描述工程的基本信息:
如果你在开发过程中向工程里面加入了很多额外的插件,则必然会导致你的Eclipse启动速度变慢。在这种情况下,你可以到这个文件里面去掉一些插件,不过这样一来你在开启那些关联文件的时候会加载那些插件。
.settings 文件
里面存放各种插件的配置文件。
以上是简单介绍了Eclipse的Project相关的隐藏配置文件.
1. src:存放所有的*.java源程序。
2. gen:为ADT插件自动生成的代码文件保存路径,里面的R.java将保存所有的资源ID。
3. assets:可以存放项目一些较大的资源文件,例如:图片、音乐、字体等。
4. res:可以存放项目中所有的资源文件,例如:图片(*.png、*.jpg)、文本等。
5. res\drawable-hdpi:保存高分辨率图片资源,可以使用Resources.getDrawable(id)可以获得资源类型。
6. res\drawable-ldpi:保存低分辩率图片资源,可以使用Resources.getDrawable(id)可以获得资源类型。
7. res\drawable-mdpi:保存中等分辨率图片资源,可以使用Resources.getDrawable(id)可以获得资源类型。
8. res\layout:存放所有的布局文件,主要是用于排列不同的显示组件,在Android程序中要读取此配置。
9. res\values: 存放一些资源文件的信息,用于读取文本资源,在本文件夹之中有一些约定的文件名称:
· arrays.xml:定义数组数据;
· colors.xml:定义表示颜色的数据;
· dimens.xml:定义尺度,可以使用Resources.getDimension()获得这些资源;
· strings.xml:定义字符串,可以使用Resources.getString()或Resources.getText()方法获得这些资源;
· styles.xml:定义显示的样式文件;
10.res\raw:自定义的一些原生文件所在目录,像音乐、视频等文件格式,Resources.getRawResource()方法可以获得这些资源。
11. res\xml:用户自定义的XML文件,所有的文件在程序运行时编译到应用程序之中,在程序运行时可以使用Resources.getXML()方法获取。
12. res\anim:用于定义动画对象;
13. bin:生成apk的文件夹。
说明:
1. drawable与layout立方的资源,项目会自动识别这些资源,然后会在R文件中对应每个资源文件生成一个id,你可以在代码中直接通过R.drawable.ID或者是R.layout.ID来调用这些资源。
2. asserts中的资源系统不会自动识别,需要你通过IO来自己读取,这里一般放置音频文件或者加密文件等系统无法识别的文件,当然你也可以把图片等放在这里,但是系统无法自动识别这些资源。
3. R类与资源文件关系说明
1). 静态类drawable类对应res文件夹中的drawable-hdpi、drawable-ldpi、drawable-mdpi三个文件夹,drawable类中每个整型的静态常量名与这三个文件夹中的图片资源文件相同(不含扩展名),这三个文件夹中相同文件名的资源对应同一个整型变量,Android系统会根据不同类型的屏幕分辨率,自动选取合适的图片资源。
2). 静态类layout类对应res文件夹中的layout文件夹,layout文件夹中的每个布局文件在layout类中都会有一个与文件名相同的整型静态变量。
3). 静态类string对应res/values文件夹中每个XML文件中的字符串资源,如上图中的strings.xml文件定义如下:
"1.0" encoding="utf-8"?>
string类使用中每个静态常量名与
4. 扩展说明
1). 资源文件与清单文件AndroidManifest.xml
A.
eclipse中需要关联到第三方JAR文件时,可以直接添加JAR文件,也可以增加环境变量的形式来添加JAR文件,当然原理都是一样的,都是引用 JAR文件,除了可以直接右点击工程,属性,在”Java Build Path”中添加外,其实还可以直接编辑工程目录下的 .classpath这个文件,这个文件即是记录工程中的一些环境变量及工程中文件的输出目的的,此文件结构大至如下:
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
<classpathentry kind="src" path="gen"/>
<classpathentry kind="output" path="bin"/>
</classpath>
其中,src是源文件输出目的的,output是类文件输出目的的,con是eclipse运行时所需的核心包,var是通过环境变量的形式增加的一些 JAR包,lib是直接加入的JAR包,所以需要加入一些第三方的JAR文件时,直接编辑此文件即可,eclipse不需重启,工程即可生效.
有关说明:
有时从别的工程导入到另一个工程时,工程名旁边有一个红插,而这时可能有很多人认为是某个地方导入的不对,或有些文件没导入完全,当然也有这个可能,但大 多数是因为原工程中引入了一些环境变量,而导入到本机上的eclipse时,环境变量路径发生了变化,eclipse找不到相关的JAR文年,所以工程名 旁边有一个红插,而且这时当新建类,或编辑类时,类文件都不会编绎的,甚至有人认为此时是eclipse不能自动编绎了,查看自动编绎属性时又是自动编绎 的,换到其他工程时又可以自动编绎,所以可能一时找不到原因,其实是.classpath文件中的一些环境变量的路径不正确导致的,去掉或指向正确的路径 即可.
添加进的项目有可能会出现
Log Cat的信息是
java.lang.RuntimeException: Unable to instantiate application com.teleca.jamendo.JamendoApplication: java.lang.ClassNotFoundException: com.teleca.jamendo.JamendoApplication in loader