android中.classpath和.project作用


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




android中.classpath和.project作用

  (2012-07-18 23:52:49)
转载
标签: 

it

 
当在 Eclipse 里创建一个项目时,默认地会创建一个 .classpath 在项目的根目录下。这个文件时用编辑来保存文件名和其他依赖文件,以保证编译和运行成功。一般来说,这个文件会在你更新项目库文件的时候进行自动更新。
所谓classpath就是class 文件 路径 ,如果class文件的路径在classpath中,那么在cmd启用 java 解释 class文件就不必非要 定位 在class 文件目录 中, 任何 路径都 可以 解释class文件。


.project是项目文件,项目的结构都在其中定义,比如lib的位置,src的位置,classes的位置


.classpath的位置定义了你这个项目在编译时所使用的$CLASSPATH


这些文件你用文本编辑器就能察看了

在一个项目中点刷新的目的是为了更新.project文件中的文件清单,让你把不通过eclipse提交到项目的文件显示出来

 

.classpath 文件

[xml]  view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <classpath>  
  3.         <classpathentry kind="src" path="src"/>  
  4.         <classpathentry kind="src" path="test"/>  
  5.         <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>  
  6.         <classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>  
  7.         <classpathentry kind="lib" path="lib/dom4j-1.6.1.jar">  
  8.                 <attributes>  
  9.                         <attribute name="javadoc_location" value="file:/home/wpc/Work/Apache/dom4j-1.6.1/docs/api$  
  10.                 </attributes>  
  11.         </classpathentry>  
  12.         <classpathentry kind="output" path="bin"/>  
  13. </classpath>  

  从数据上我们容易看出,上面描述了工程的依赖文件:

  1. 源文件的具体位置(kind="src")
  2. 运行的系统环境(kind="con")
  3. 工程的library的具体位置信息(kind="lib")
  4. 在每个lib的xml子节点中,有关于它的其它配置信息(例如我配置的那个"javadoc_location")
  5. 项目的输出目录(kind="output")


总体上说这个文件就是配置整个工程的运行环境。

 

     .project 文件

[xml]  view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <projectDescription>  
  3.     <name>CreateInterpret</name>  
  4.     <comment>JavaCC Nature@key 32303037303632392D3130303020437265617465496E746572707265742F777063 </comment>  
  5.     <projects>  
  6.     </projects>  
  7.     <buildSpec>  
  8.         <buildCommand>  
  9.             <name>sf.eclipse.javacc.javaccbuilder</name>  
  10.             <arguments>  
  11.             </arguments>  
  12.         </buildCommand>  
  13.         <buildCommand>  
  14.             <name>org.eclipse.jdt.core.javabuilder</name>  
  15.             <arguments>  
  16.             </arguments>  
  17.         </buildCommand>  
  18.     </buildSpec>  
  19.     <natures>  
  20.         <nature>org.eclipse.jdt.core.javanature</nature>  
  21.         <nature>sf.eclipse.javacc.javaccnature</nature>  
  22.     </natures>  
  23. </projectDescription>  

 从数据上看,我们可以了解到这些配置主要是描述工程的基本信息:

  1. 工程名<name></name>
  2. 工程注释描述<comment></comment>
  3. 运行时需要的额外Eclipse插件<natures></natures>,及其具体加载方式信息<buildSpec></buildSpec>

如果你在开发过程中向工程里面加入了很多额外的插件,则必然会导致你的Eclipse启动速度变慢。在这种情况下,你可以到这个文件里面去掉一些插件,不过这样一来你在开启那些关联文件的时候会加载那些插件。

 

     .settings 文件

     里面存放各种插件的配置文件。

 

以上是简单介绍了Eclipse的Project相关的隐藏配置文件.

















Android 项目中文件夹的作用

分类: Android   1245人阅读  评论(0)  收藏  举报
android 项目文件夹
 

Android 项目中文件夹的作用  

android中.classpath和.project作用_第1张图片

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文件定义如下:

<?xml version="1.0" encoding="utf-8"?>

<resources>

    <string name="hello"> Hello World, HelloWorld!</string>

    <string name="app_name">HelloWorld</string>

</resources>

string类使用中每个静态常量名与<string>元素中name属性值相同。

       4. 扩展说明

             1). 资源文件与清单文件AndroidManifest.xml

                     A. <application>元素中的android:icon属性会通过@drawable/icon的方式引用drawable资源文件夹中定义的icon.png图片作为Android桌面的启动图标; android:label会通过        @string/app_name的方式来引用values资源文件








eclipse中需要关联到第三方JAR文件时,可以直接添加JAR文件,也可以增加环境变量的形式来添加JAR文件,当然原理都是一样的,都是引用 JAR文件,除了可以直接右点击工程,属性,在”Java Build Path”中添加外,其实还可以直接编辑工程目录下的 .classpath这个文件,这个文件即是记录工程中的一些环境变量及工程中文件的输出目的的,此文件结构大至如下:</p><p>&lt;?xml version="1.0" encoding="UTF-8"?&gt;<br>&lt;classpath&gt;<br>&nbsp;&lt;classpathentry kind="src" path="src"/&gt;<br>&nbsp;&lt;classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/&gt;<br>&nbsp;&lt;classpathentry kind="src" path="gen"/&gt;<br>&nbsp;&lt;classpathentry kind="output" path="bin"/&gt;<br>&lt;/classpath&gt;</p><p>其中,src是源文件输出目的的,output是类文件输出目的的,con是eclipse运行时所需的核心包,var是通过环境变量的形式增加的一些 JAR包,lib是直接加入的JAR包,所以需要加入一些第三方的JAR文件时,直接编辑此文件即可,eclipse不需重启,工程即可生效.<br>有关说明:<br>有时从别的工程导入到另一个工程时,工程名旁边有一个红插,而这时可能有很多人认为是某个地方导入的不对,或有些文件没导入完全,当然也有这个可能,但大 多数是因为原工程中引入了一些环境变量,而导入到本机上的eclipse时,环境变量路径发生了变化,eclipse找不到相关的JAR文年,所以工程名 旁边有一个红插,而且这时当新建类,或编辑类时,类文件都不会编绎的,甚至有人认为此时是eclipse不能自动编绎了,查看自动编绎属性时又是自动编绎 的,换到其他工程时又可以自动编绎,所以可能一时找不到原因,其实是.classpath文件中的一些环境变量的路径不正确导致的,去掉或指向正确的路径 即可.</p><p>添加进的项目有可能会出现</p><p>Log Cat的信息是<br>java.lang.RuntimeException: Unable to instantiate application com.teleca.jamendo.JamendoApplication: java.lang.ClassNotFoundException: com.teleca.jamendo.JamendoApplication in loader







你可能感兴趣的:(android)