iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >eclipse项目中的.classpath文件有什么用
  • 404
分享到

eclipse项目中的.classpath文件有什么用

2023-06-22 07:06:26 404人浏览 独家记忆
摘要

这篇文章主要介绍eclipse项目中的.classpath文件有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1 前言在使用eclipse或者myeclipse进行java项目开发的时候,每个project(工

这篇文章主要介绍eclipse项目中的.classpath文件有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

    1 前言

    在使用eclipse或者myeclipse进行java项目开发的时候,每个project(工程)下面都会有一个.classpath文件,那么这个文件究竟有什么作用?

    2 作用

    .classpath文件用于记录项目编译环境的所有信息,包括:源文件路径、编译后class文件存放路径、依赖的jar包路径、运行的容器信息、依赖的外部project等信息。如果把该文件删除,则eclipse不能讲该工程识别为一个正常的java工程,仅仅当做普通的文件夹而导致不能正常运行。

    3 .classpath内容

    .classpath文件其实也是一个xml格式的内容文件,其具体内容大致如下:

    <?xml version="1.0" encoding="UTF-8"?><classpath>    <classpathentry kind="src" path="src"/>    <classpathentry kind="src" path="resource"/>    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTaiNER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jdk1.7">        <attributes>            <attribute name="owner.project.facets" value="java"/>        </attributes>    </classpathentry>    <classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.eclipse.jst.server.Tomcat.runtimeTarget/学习 8080">        <attributes>            <attribute name="owner.project.facets" value="jst.WEB"/>        </attributes>    </classpathentry>    <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>    <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>    <classpathentry kind="output" path="WebContent/WEB-INF/classes"/></classpath>
    • ①以”classpath”为根节点,每个“classpathentry”节点代表一个说明信息。

    • ②每个“classpathentry”以“kind”属性指明类型,“path”指明路径。

    • ③以上文件的所有内容,都是依赖项目中的“Java Build Path”内容改变而改变的,即对“Java Build Path”的所有操作都会反应到文件内容中。

    eclipse项目中的.classpath文件有什么用

    现在来具体分析文件内容的每个节点含义

    3.1 kind="src"

    src:即source 源文件,代表的是一个源文件,path=”src”是一个相对路径,相对.classpath文件本身,即path=”src”表示文件夹src与.classpath在同一个目录,且代表源文件。

    <classpathentry kind="src" path="src"/><classpathentry kind="src" path="resource"/>

    kind=”src”的操作对应于“Java Build Path”的“Source”tab页

    eclipse项目中的.classpath文件有什么用

    如下图,增加一个文件夹bin作为源文件,则.classpath文件增加内容

    eclipse项目中的.classpath文件有什么用

    内容增加如下:

    <classpathentry kind="src" path="src"/><classpathentry kind="src" path="bin"/><classpathentry kind="src" path="resource"/>

    当然,做相应修改或删除,同样.classpath文件内容会相应改变。

    另外,当指定属性combineaccessrules=”false”是则代表引入外部project,具体如下

    <classpathentry combineaccessrules="false" kind="src" path="/mybatis"/>

    对应页面tab,其中path=”/mybatis”,是相对应workspace下的

    绝对路径。

    eclipse项目中的.classpath文件有什么用

    3.2 kind="output"

    output用于指定java源文件编译后的class文件存放路径,格式如下

    <classpathentry kind="output" path="WebContent/WEB-INF/classes"/>

    path:代表存放class文件路径,同样是相对.classpath文件的路径,找到“WebContent/WEB-INF/classes”,可以看到class文件的存放

    eclipse项目中的.classpath文件有什么用

    假设修改输出文件路径,则相应内容也会改变

    改为:spring-mybatis\WebContent\WEB-INF\newclasses

    eclipse项目中的.classpath文件有什么用

    则.classpath文件内容修改为:

    <classpathentry kind="output" path="WebContent/WEB-INF/newclasses"/>

    实际存放class文件的路径也会改变

    eclipse项目中的.classpath文件有什么用

    3.3 kind="con"

    con即是container,就是程序运行的容器,或者就说是运行环境也OK,它实际上是在Myeclipse最初的时候要配置installed JREs中指定(一般情况下我们指定的是JDK),但是这里实际使用的是JDK下的JRE中的jar包,就是JDK_HOME/jre/lib就是对应的这条语句。具体内容如下

    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jdk1.7">        <attributes>            <attribute name="owner.project.facets" value="java"/>        </attributes>    </classpathentry>    <classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/学习 8080">        <attributes>            <attribute name="owner.project.facets" value="jst.web"/>        </attributes>    </classpathentry>    <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>    <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>

    对应操作tab如下

    eclipse项目中的.classpath文件有什么用

    3.3.1 JRE配置

    path=”XXX”用于指定jre容器的使用情况,可选择jre的不同来源,不同来源path的实际值会有些变化

    eclipse项目中的.classpath文件有什么用

    ①选择”Workspace default JRE(jdk1.7)”,则值为

    path="org.eclipse.jdt.launching.JRE_CONTAINER"

    ②选择“Alternate JRE”,则值为

    path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jdk1.7"

    其中最后么的jdk1.7是我自定义的JRE名称

    ③选择”Execution environment”,即选择eclipse自带的内置jre,值为

    path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"

    其中最后么的JavaSE-1.7是系统内置的JRE名称

    另外属性值name=”owner.project.facets”

    <attribute name="owner.project.facets" value="java"/>

    应该是指定JRE容器的具体使用的模板,默认使用”java”,具体的没有探究。

    3.3.2 Server Runtime配置

    同理,其他容器配置同上,如对Server Runtime 容器的配置,下面配置了tomcat容器运行环境

    <classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/学习 8080"/>
    3.3.3 Web App Libraries配置
    <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>
    3.3.4 User Library配置
    <classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/tomcat7"/>

    3.4 kind="lib"

    kind="lib"用于指定project依赖的Referenced Libraries,如图增加了一个jar包

    eclipse项目中的.classpath文件有什么用

    则相应.classpath文件内容增加

    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/commons-dbcp-1.2.1.jar"/>

    其中path指定了依赖的jar的相对路径。

    3.5 顺序

    .classpath文件中各节点的顺序是通过tab-Order and Export 来控制的,不同的顺序可能会引起加载class文件问题,一般是源码放在最前面。

    eclipse项目中的.classpath文件有什么用

    以上是“eclipse项目中的.classpath文件有什么用”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网精选频道!

    --结束END--

    本文标题: eclipse项目中的.classpath文件有什么用

    本文链接: https://www.lsjlt.com/news/303258.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • c#文本框只读属性怎么设置
      c# 文本框只读属性的设置 问题:如何设置 C# 文本框的只读属性? 回答: 要设置文本框的只读属性,可以使用 ReadOnly 属性。 详细解释: ReadOnly 属性是一个布尔值属...
      99+
      2024-05-14
      c#
    • 如何使用 Golang ORM 工具与数据库交互?
      使用 gorm orm 工具与数据库交互,可通过以下步骤轻松实现:安装和初始化(1)、定义模型(2)、建立映射(3)、创建记录(4)、读取记录(5)、更新记录(6)、删除记录(7)、事务...
      99+
      2024-05-14
      golang orm mysql git iphone
    • c++中double与float的区别
      c++++ 中 double 与 float 的区别 在 C++ 中,double 和 float 都是浮点数类型,但它们在精度、范围和内存占用方面存在差异。 精度: double:双...
      99+
      2024-05-14
      c++ 内存占用
    • 如何在 Golang 中处理数据库错误?
      在 go 中处理数据库错误的步骤包括:使用专门的 go mysql 驱动程序。实现 error 接口以创建自定义错误。检测错误,记录足够的信息,并基于错误类型执行适当的恢复操作。 如何...
      99+
      2024-05-14
      golang 数据库错误 mysql git 数据丢失
    • c++中int怎么转string
      在 c++ 中将 int 转换为 string 的方法有:使用 to_string() 函数直接转换。使用 stringstream 类。使用 sprintf() 函数。 如何在 C+...
      99+
      2024-05-14
      c++
    • 优化 C++ 服务器架构以提高吞吐量
      优化 c++++ 服务器吞吐量策略:线程池:预先创建线程池,快速响应请求。非阻塞 i/o:在等待 i/o 时执行其他任务,提升吞吐量。http/2:使用二进制协议,支持多路复用和内容压缩...
      99+
      2024-05-14
      优化 服务器架构 c++
    • 使用 C++ 堆分配器管理服务器架构中的内存
      使用 c++++ 堆分配器管理服务器内存可提高性能和稳定性。堆分配器负责分配和释放动态内存,跟踪空闲/已分配内存元数据。在服务器架构中,它用于分配应用程序对象、缓冲区和数据结构。选择堆分...
      99+
      2024-05-14
      c++ 内存管理 并发访问
    • c#怎么获取字符串中的数字
      从 c# 字符串中提取数字的方法有五种:正则表达式、循环和 char.isdigit()、int.tryparse()、string.split() 和 int.parse()、linq...
      99+
      2024-05-14
      git c#
    • C++ 异常处理在服务器架构中的最佳实践
      c++++ 异常处理在服务器架构的最佳实践:定义清晰的异常层次结构,使用自定义异常类型封装相关信息。使用异常安全函数,及时在适当范围内处理异常。提供有意义的错误消息,帮助用户了解错误并采...
      99+
      2024-05-14
      c++ 异常处理
    • c#怎么拼接字符串
      在 c# 中拼接字符串有三种方法:使用加法(+)运算符、string.concat() 方法和 stringbuilder 类。最简单的方法是使用 + 运算符将字符串连接起来,...
      99+
      2024-05-14
      c#
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作