首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

.classpath资料分析

2013-03-04 
.classpath文件分析 classpath classpathentry kindsrc pathsrc/ classpathentry kindcon p

.classpath文件分析
< 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 loaderdalvik.system.PathClassLoader@43598650
Caused by: java.lang.ClassNotFoundException: com.teleca.jamendo.JamendoApplication in loaderdalvik.system.PathClassLoader@43598650
的错误。改下.classpath就可以了

?

?

eclipse工程中.classpath文件含义:
下面是一个.classpath文件内容:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<!-- 源码目录 -->
<classpathentry kind="src" path="src"/>

?


<!-- 工程引用外部lib目录(最好用相对路径) -->
<classpathentry kind="lib" path="G:/java_ocr/Asprise-OCR-Java-Windows_XP_32bit-4.0/aspriseOCR.jar"/>
<classpathentry kind="lib" path="lib/xstream-1.3.1.jar"/>
<classpathentry kind="lib" path="lib/xpp3_min-1.1.4c.jar"/>
<classpathentry kind="lib" path="lib/commons-logging.jar"/>
<classpathentry kind="lib" path="lib/htmlparser.jar"/>
<classpathentry kind="lib" path="lib/jdom.jar"/>
<classpathentry kind="lib" path="lib/log4j-1.2.8.jar"/>
<classpathentry kind="lib" path="lib/lucene-1104.jar"/>
<classpathentry kind="lib" path="lib/mysql-connector-java-5.0.0-beta-bin.jar"/>
<classpathentry kind="lib" path="lib/xml-apis.jar"/>
<classpathentry kind="lib" path="lib/nekohtml.jar"/>
<classpathentry kind="lib" path="lib/xalan.jar"/>
<classpathentry kind="lib" path="lib/xercesImpl.jar"/>
<classpathentry kind="lib" path="lib/js.jar"/>
<classpathentry kind="lib" path="lib/cobra.jar"/>
<classpathentry kind="lib" path="lib/jdmkrt.jar"/>

<!-- JDK编译时容器 -->
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jdk1.6.0_06"/>
<!-- class 目录 -->
<classpathentry kind="output" path="bin"/>
</classpath>

说明:
1、<classpathentry kind="src" path="src"/>
含义:本工程的源码所在地路径--》在当前工程路径下的src文件下
2、<classpathentry kind="lib" path="G:/java_ocr/Asprise-OCR-Java-Windows_XP_32bit-4.0/aspriseOCR.jar"/>
含义:本工程所要应用的外部jar包,具体路径是G:/java_ocr/Asprise-OCR-Java-Windows_XP_32bit-4.0/aspriseOCR.jar这里利用的是绝对路径
注意:我们不要应用绝对路径,这样的话我们load工程的时候就会出现找不到jar包的现象我们要用<classpathentry kind="lib" path="lib/cobra.jar"/>
这种相对路径的格式,都用相对路径,那么当我们利用eclipse从文件load一个已经存在的工程的时候就不用在重新引入jar包了
3、<classpathentry kind="output" path="bin"/>
含义:本工程编译后的类文件存放到当前工程路径下的bin目录下

?

Eclipse .classpath文件浅谈:

<classpathentry exported="true" kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
每个新建java工程(Project)都默认存在的。

<classpathentry kind="src" ōutput="km230/apitest/classes" path="km230/apitest/src"/>
指定源文件位置, 对应工程属性Java build path中Source项中的一项, kind="src" 指明为源文件, 源文件路径path, output为这条路径中源文件编译以后class文件的输出路径。

<classpathentry kind="src" path="km230batch/src"/>
指定源文件位置, 对应工程属性Java build path中Source项中的一项, kind="src" 指明为源文件, 源文件路径path, 编译以后class文件的输出路径为默认输出路径。

<classpathentry kind="output" path="km230server/approot/WEB-INF/classes"/>
指定编译以后class文件的默认输出路径, 对应工程属性Java build path中Source项中的default output path, kind="output"指明为默认class输出路径, path为相应输出路径。

注意: 这一条在文件中有且只能有一条(不可能同时出现两个默认吧?).

<classpathentry kind="lib" path="km230/lib/Notes.jar"/>
指定工程所用到的库文件或目录, 对应工程属性Java build path中Libraries项中的一项, kind="lib"指明为库文件或目录, path为库文件或目录位置。

注意: 当指定库文件时(非库目录, 通常是jar包, 好像zip也可以, 不知道是否还有其它), 应当包含文件名。

<classpathentry kind="var" path="JUNIT_HOME/junit.jar" sourcepath="ECLIPSE_HOME/plugins/org.eclipse.jdt.source_3.0.0/src/org.junit_3.8.1/junitsrc.zip"/>
指定工程所用到的库文件或目录, 对应工程属性Java build path中Libraries项中的一项, kind="var"指明带有全局编译路径中设置的变量(Window->Prefrences->Java->Build Path->Classpath Variables), 如上面的ECLIPSE_HOME, path为这个变量目录下的库文件(同样通常是jar包, 好像zip也可以, 也不知道是否还有其它)。

热点排行