解析Myeclipse项目下的.classpath文件 (转)

http://www.cnblogs.com/wanggd/p/3435070.html

解析Myeclipse项目下的.classpath文件

按 Ctrl+C 复制代码
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="melibrary.com.genuitec.eclipse.j2eedt.core.MYECLIPSE_JAVAEE_5_CONTAINER"/>
<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/bsf-2.3.0.jar"/>
<classpathentry kind="output" path="WebRoot/WEB-INF/classes"/>

1. <classpath kind="src" path="src"> 对应的是source folder类型的目录,
kind---表示这个classpath的类型,path表示在项目中的路径,
path使用根目录的相对路径(相对.classpath文件本身的相对路径) ,
myeclipse项目中的src本身就是一个source folder,所以它会自动写入这个文件中,
如果自己手动建立了一个source folder,这个folder也会写入这个文件,
形式就是以上形式eg.在项目基础上新建一个test的source folder,
就会就会成为这样:
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="test"/></pre><br>

2. <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
这句是表示程序的运行环境 kind="con"---表示classpath的类型,
con即是container,就是程序运行的容器,或者就说是运行环境也OK,
它实际上是在Myeclipse最初的时候要配置installed JREs中指定(一般情况下我们指定的是JDK),
但是这里实际使用的是JDK下的JRE中的jar包,就是JDK_HOME/jre/lib就是对应的这条语句

3. <classpathentry kind="con" path="melibrary.com.genuitec.eclipse.j2eedt.core.MYECLIPSE_JAVAEE_5_CONTAINER"/>
这句是kind="con"当然和上条一样,是表示运行时的容器,
一般情况下是java web项目才会有,它是包含了J2EE服务器要使用到的一些jar包,
这个目录中的jar包是其中最特殊的,那就是它不会在部署项目的时候部署到服务器上去,
因为myeclipse认为这样的jar包是服务器应该有的,所以这里有时候会出现问题,
就是开发的时候不出现问题,但是部署之后会出错,就是有的服务器有的jar包并没有提供,
比如tomcat(因为tomcat并不是专业的web服务器,它只是一个轻量的web容器),这就要区分好开发环境和运行环境

4. <classpathentry kind="lib" path="WebRoot/WEB-INF/lib/bsf-2.3.0.jar"/>
这条语句kind="lib",对应的是classpath中的库文件,path指定库文件的路径,
同样是相对与项目根目录的相对路径

5. <classpathentry kind="output" path="WebRoot/WEB-INF/classes"/>
这条表示项目的输出目录,整个之前定义的classpath无论是kind=‘src",kind="con",kind="lib",
在编译后都会进入到这个目录中来,在java web中也就是WebRoot/WEB-INF/classes。
同样使用的path是相对项目根目录的相对路径(相对.classpath文件本身的相对路径),
但是由于J2EE部分的是本身要求web 服务器本身要有那些jar包,所以那个例外不会进行拷贝

classpath是myeclipse重要文件,在进行相关的查找时候要用到
项目根目录下的".classpath“文件就是保存项目classpath的文件
文件中的 <classpath>... ...</classpath>之间保存各种classpath信息,
kind表示类型,path表示路径,且使用的都是相对于”.classpath“或者说是项目根目录的相对路径

几种kind的含义
kind=”src" ----对应source folder目录
kind="con"--项目的容器,一般当是java web项目的时候会有两个
kind="lib"---项目中使用到的库文件
kind=‘output"--输出目录,最终编译后相关文件的目标目录,myeclipse会自动完成相关的拷贝
最终对于myeclipse的classpath的管理都是通过这个文件实现

按 Ctrl+C 复制代码

myeclipse项目中的.classpath文件:
<?xml version=”1.0” encoding=”UTF-8”?>
<classpath>
<!-- 源码目录 -->
<classpathentry kind=”src” path=”src”/>
<!-- JDK运行时容器 -->
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="melibrary.com.genuitec.eclipse.j2eedt.core.MYECLIPSE_JAVAEE_5_CONTAINER"/>
<!-- 以下为类库path为你自定义的目录,jar文件的路径 -->
<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/sino-base-1.3.2.jar"/>
<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/sino-bms-1.4.3.jar"/>
<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/sino-frame-1.2.2.jar"/>
<!-- 编译后输出class目录 -->
<classpathentry kind="output" path="WebRoot/WEB-INF/classes"/>
</classpath>

---------------------------------------------------------------------------

.project文件:

<?xml version=”1.0” encoding=”UTF-8”?>
<projectDescription>
<!-- 工程名称 这里定义的name的值如果已经工作空间的其他项目占用了,
当使用myeclipse的import功能导入项目时,就会导不进来-->
<name>sxVIP</name>
<comment></comment>
<projects></projects>
<!-- 编译器指定-->
<buildSpec>
<buildCommand>
<name>org.eclipse.wst.common.project.facet.core.builder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<!-- 核心特性 -->
<natures>
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
<nature>com.genuitec.eclipse.ast.deploy.core.deploymentnature</nature>
<nature>com.genuitec.eclipse.j2eedt.core.webnature</nature>
</natures>
</projectDescription>

--------------------------------------------------------------------------

对于myeclipse工程多了一个(web 应用程序才有)

.mymetadata文件:

<?xml version=”1.0” encoding=”UTF-8”?>
<!--
type : 工程类型
name : 工程名称
id : 工程在工作空间内的唯一标识
context-root : 网站根路径
j2ee-spec: J2EE标准
archive : 打包后war文件
-->

<project-module
type=”WEB”
name=”upload”
id=”myeclipse.1152954865843”
context-root=”/upload”
j2ee-spec=”1.4”
archive=”upload.war”>
<attributes>
<!-- value : Web根目录名称 -->
<attribute name=”webrootdir” value=”WebRoot” />
</attributes>
</project-module>

当为myeclipse的项目修改部署的名字时,

.mymetedata文件中的context-root的值会相应的变化

解析Myeclipse项目下的.classpath文件 (转),布布扣,bubuko.com

时间: 2024-08-07 12:53:19

解析Myeclipse项目下的.classpath文件 (转)的相关文章

MyEclipse导入的项目js文件乱码

用MyEclipse导入项目.发现中文都是乱码的.于是按照常规改了一下编码格式,可是发现js文件仍然是乱码.下面给大家介绍一下怎么解决. 方法一:打开MyEclipse .点击开项目.找到项目下的.js文件.右击选择"Properties"选项,或者是快捷键"alt+Enter"键,就会弹出Properties 属性框.默认Text file encoding  是选择"default",你就选择"other",设置属性编码(

quick cocos 或者 Cocos2dx 项目下的Android.mk文件的学习

android.mk文件的作用:编译需要的cpp文件,生成.so动态库,供android端调用. 先上一个android.mk文件: 第一次创建项目,在Android平台编译时,都需要通过android.mk文件编译整个cocos2dx的库(第一次编译我们需要等待很长的时间.....). 首先知道$(call import-module,dir_name)的作用,然后顺着lib/proj.android目录继续找对应目录下的android.mk文件 类似于递归一样,把所有目录下的android.

myeclipse 不能重新编译 web .classpath文件修改

这个问题困扰我好久了,就是当你从另一个workspace中拷到另一个workspace中,然后在import进myeclipse中就会出现无论你怎么改代码,编译完成后webroot目录下的classes中的东西都不会改变. http://www.blogjava.net/xcp/archive/2010/09/01/330604.html 解决办法我就不再赘述了,说一下更细节的东西: 首先当我们导入jar这种包的时候,propertity->java build path->Libraries

MyEclipse Workspace 项目文件 .project .classpath .mymetadata解析

<!-- .classpath文件 --> <?xml version="1.0" encoding="UTF-8"?> <classpath> <!-- 源码目录 --> <classpathentry kind="src" output="/web-inf/classes" path="src"/> <!-- JDK运行时容器 -->

myeclipse工程当中的.classpath 和.project文件什么作用?

.project是项目文件,项目的结构都在其中定义,比如lib的位置,src的位置,classes的位置.classpath的位置定义了你这个项目在编译时所使用的$CLASSPATH .classpath 文件从数据上我们容易看出,上面描述了工程的依赖文件: 源文件的具体位置(kind="src") 运行的系统环境(kind="con") 工程的library的具体位置信息(kind="lib") 在每个lib的xml子节点中,有关于它的其它配置

java web项目 。classpath 文件解析

eclipse工程中.classpath文件含义: 下面是一个.classpath文件内容: < ?xml version="1.0" encoding="UTF-8"?> < classpath>         <!-- 源码目录 -->         <classpathentry kind="src" path="src"/>         <!-- 工程引用外

Quick-Cocos2d-x初学者游戏教程(三) ---------------------------- 解析quick新建项目的代码文件

Quick-Cocos2d-x初学者游戏教程(三) 2.main.lua 在src目录下,除了 config.lua 文件外,还有一个 main.lua 文件,这个 main.lua 是 Quick 项目的通用入口文件,它类似于 Cocos2d-x 中的 AppDelegate.h/cpp 文件,同时也类似于一般 Windows 工程中的 main 文件. 打开 main.lua 文件,其内容如下所示: 1 2 3 4 5 6 7 8 9 10 function __G__TRACKBACK__

Maven项目下update maven后Eclipse报错:java.lang.ClassNotFoundException: ContextLoaderL

Maven项目下update maven后Eclipse报错:java.lang.ClassNotFoundException: ContextLoaderL     严重: Error configuring application listener of class org.springframework.web.context.ContextLoaderListener java.lang.ClassNotFoundException: org.springframework.web.co

从svn检出的项目缺少.project和.classpath文件解决办法

工程的.project和.classpath文件丢失 解决方案 标签: it 分类: myeclipse Web Project 转 Dynamic Web Project 从MyEclipse转到Eclipse Java EE IDE,尽可能延续svn项目. 1,从svn检出Web Project,将被识别为Java Project而不能发布到Server. 2,新建同名Dynamic Web Project, 配置Build Path –> Source –> Default output