`
missaaron
  • 浏览: 11755 次
  • 性别: Icon_minigender_1
  • 来自: 南昌
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

浅谈eclipse生成的.classpath文件

阅读更多

1、.classpath文件时eclipse新建web工程的时候生成的一个文件,改变java Build path的时候或者改变加载的jar包顺序的时候,这个文件也会改变。

2、.classpath文件不能随意删除。个人在将已有的工程import进入eclipse工作区的时候将.classpath文件删除了,然后再重新导入jar包,整个工程就会重新编译,也就会产生.classpath文件,但是这个重新生成的.classpath文件的内容可能就会出问题,也就有可能导致在tomcat部署的时候出现不可预料的问题。
例如:
   原始的.classpath文件部分主要内容如下:
        <classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="output" path="WebRoot/WEB-INF/classes"/>
   个人删除后,eclipse重新build的.classpath文件部分主要内容如下:
        <classpathentry kind="src" path=""/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jdk1.6.0_11"/>
<classpathentry kind="output" path="/bin"/>
说明下:<classpathentry kind="src" path="src"/> 表示工程源文件的地址;
        <classpathentry kind="output" path="/bin"/>表示产生的class文件地址;

比较前后两个.classpath文件可以发现,重新build的.classpath文件里面的源文件地址为 <classpathentry kind="src" path=""/>,这样,在整个工程里面就会出现所有package错误,此时eclipse默认为package src.com.test, 而工程里面正确的包名应该是 package com.test

另外,如果新生成的.classpath文件class文件地址为bin目录下的,即<classpathentry kind="output" path="/bin"/> ,tomcat部署工程的时候,默认去WebRoot/WEN-INF/classes这个目录查找class文件,而此时class文件去不存在于bin目录下面,故而tomcat下面没有class文件,在启动时也就会产生ClassNotFoundException错误!

如果碰到以上问题的话,则可以参考原始.classpath文件修改过来就可以了

以前没有注意过.classpath文件,这次让我深刻了解了它,代价比较严重,花了不少时间。现在想想归结原因就是我把.classpath文件轻易删除了。

在这里总结一下,警惕!

 

分享到:
评论

相关推荐

    eclipse下的.classpath文件和.project文件

    例如,如果你将项目设置为Java项目,那么.project文件中就会有一个`nature`标签指明`org.eclipse.jdt.core.javanature`,这告诉Eclipse该项目是一个Java项目,需要应用Java开发工具集的相关规则和功能。此外,构建...

    eclipse工程中.classpath文件的含义

    &lt;classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jdk1.6.0_06"/&gt; 这个入口表示JDK编译时容器的设置。 输出目录 这个入口...

    IKVM.GNU.Classpath

    在IKVM.GNU.Classpath项目中,dll文件可能是IKVM的实现部分,包括了对Java虚拟机的.NET实现和其他必要的类库。在提供的压缩包文件中,"DLL工具.exe"可能是一个用于操作dll文件的实用程序,比如查看、注册或卸载dll;...

    Android 4.4.4源码的.classpath文件

    Android 4.4.4源码的.classpath文件,主要用于将Android 4.4.4源码的导入到eclipse工具中,提供给需要学习android源码的同学,也自己顺便记录一下,方便查找。

    .classpath

    .classpath

    Eclipse4.x插件开发实践

    3. 配置元数据:Eclipse插件的元数据是通过XML文件定义的,比如plugin.xml,它描述了插件的组件和它们的行为。 4. 测试和调试:Eclipse提供了内置的运行和调试环境,允许你在运行时查看和测试你的插件。你可以启动...

    org.eclipse.jdt.core_3.5.2.v_981_R35x

    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:46) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt....

    (1).classpath

    (1).classpath

    Java解析语法树(AST)使用JDT相关库

    包括以下包:jdt-3.2.1-r321_v20060823.jar、 jdt-3.3.0-v20070607-1300.jar、jdt-3.4.2_r894.jar、jdt-compiler.jar、org.eclipse.datatools.enablement.jdt.classpath_1.0.1.v201107221501.jar、org.eclipse.jdt....

    swt.jar org.eclipse.equinox.common_3.6.0.v20110523.jar

    标题中的"swt.jar"和"org.eclipse.equinox.common_3.6.0.v20110523.jar"是两个关键的Java库文件,它们在Java开发中扮演着重要角色,尤其是对于Eclipse平台相关的应用。下面将详细阐述这两个库文件以及它们与Java开发...

    Eclipse开发Android源码

    &lt;name&gt;org.eclipse.jdt.core.javabuilder &lt;arguments&gt;&lt;/arguments&gt; &lt;nature&gt;org.eclipse.jdt.core.javanature ``` 3. **修改Eclipse配置**: - **调整Eclipse内存设置**:为了处理大型的源码项目,...

    gradle-android-eclipse:一个Gradle插件,可以生成Eclipse项目文件(.project和.classpath),从而可以将Eclipse IDE用于Android项目

    一个Gradle插件,可以生成Eclipse项目文件(.project和.classpath),从而可以将Eclipse IDE用于Android项目。 该生成器可与新的。 基于。 它能做什么 通过执行以下操作,此插件可以连接到,以使其适用于Android...

    eclipse 第三方jar包配置.txt

    &lt;classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jdk1.6.0_21"/&gt; &lt;/classpath&gt; ``` - `kind`属性表示了该条目的类型,...

    org.eclipse.swt.win32-4.2版本

    google,翻了n多资料,所什么.so/.dll没有放到正确的路径下啊,又是windows/linux的区别啊,然并卵,前面使用的org.eclipse.swt.win32-3.1版本,换成现在这个4.2版本(我一顿好找),完美跑起,真是蛋疼,另外有些人classpath和...

Global site tag (gtag.js) - Google Analytics