关于Tomcat 不能识别 Eclipse工作区间 Java web 工程

来源:互联网 发布:mac 设置输入法皮肤吗 编辑:程序博客网 时间:2024/05/18 20:05

一、哪类工程不能识别

a)         普通java 项目

b)         MyEclipse 下创建的 web 项目

c)         Eclipse 下创建的web 项目(受损的)

 

二、Eclipse 内切 Tomcat 识别和部署 web 项目的关键点

 

所有工程都有一个用来标识自己的文件 (.project)

   

在eclipse 下,创建 web 项目时会自动生成一个 .settings 文件夹,里面文件如下

 

这里面的文件各有各的作用,尤其是以下两个文件:

 

文件:org.eclipse.wst.common.project.facet.core.xml

 

内容:

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

<faceted-project>

  <runtime name="Apache Tomcat v5.5"/>

  <fixed facet="jst.java"/>

  <fixed facet="jst.web"/>

  <installed facet="jst.java" version="6.0"/>

  <installed facet="jst.web" version="2.4"/>

  <installed facet="wst.jsdt.web" version="1.0"/>

</faceted-project>

    注:该文件标识工程的性质,也是Tomcat 识别该项目的一个标识性文件

 

文件: org.eclipse.wst.common.component

 

内容: (这里贴出初始内容)

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

<project-modules id="moduleCoreId" project-version="1.5.0">

    <wb-module deploy-name="test_eclipse">

        <wb-resource deploy-path="/" source-path="/WebRoot"/>

<wb-resource deploy-path="/WEB-INF/classes" source-path="/src"/>

        <property name="context-root" value="test_eclipse"/>

        <property name="java-output-path" value="/WebRoot/WEB-INF/classes"/>

    </wb-module>

</project-modules>

    

分析:

     <wb-module deploy-name="test_eclipse">

     这里说的是,这个工程部署到web 容器中的名称为:“test_eclipse”

   

         <wb-resource deploy-path="/" source-path="/WebRoot"/>

    wb-resource 表示web 工程运行所要的资源

   

    <property name="context-root" value="test_eclipse"/>

    context-root 表示在web 容器里面该项目的根目录为 “test_eclipse”

   

    property name="java-output-path" value="/WebRoot/WEB-INF/classes"/>

    这里的意思是指的是java 编译生成的文件存放的路径

   

   

    注: 将Eclipse 中 web 项目部署到 Tomcat 中所加载的资源就是通过该文件制定的

 

 

三、总结

 

让Tomcat 识别web 项目的关键点

 

1、 工程中有 .settings,  且文件夹中存在org.eclipse.wst.common.project.facet.core.xml 文件  

2、 在工程的 .project 文件中加入如下内容:

<nature>org.eclipse.wst.common.project.facet.core.nature</nature>

 

如图:.project内容


做到这两点就能够让 Tomcat 识别到 Eclipse工程了

 

   部署工程到Tomcat 容器

   一句话:工程运行所需呀的资源都需要指定在org.eclipse.wst.common.component文件中

如:


 

 

假如工程目录结构如下:


那么需要修改org.eclipse.wst.common.component文件如下,以用来将 lib/log4j 下面的jar包部署到Tomcat 中

如图:

原创粉丝点击