2008-12-08 106 views
1

我刚从外部站点导入了一个WAR文件,该文件基本上是Eclipse IDE中的一个servlet(该项目在Apache-Tomcat上运行)。了解Eclipse中导入的WAR及其文件夹结构

当我导入它时,它有一个名为的Web文件夹。所以这里有一些我的新手问题:

  1. 我不确定这个文件夹的确切目的是什么?它做什么,为什么你会选择在你的项目中使用它?

  2. 我看到它有一个名为的文件夹Improted Classes和foobar.class里面的文件 - 为什么?
    (这些似乎Web内容文件夹镜像 - 虽然在这里,因为他们foobar.java您可以修改代码。)

  3. 有引用过foobar.jar文件 - 这些也都是镜像在WEB-INF/lib文件夹 - 为什么?

我知道这些都是基本类型的问题,但我刚开始使用Java和网站开发交手,所以道歉如果他们的声音有点哑! - 顺便说一句,如果有人知道任何良好的在线资源,以了解更多关于这样的项目文件结构,然后让我知道。我只需要尽快处理这个问题 - 因为项目截止日期很快。

干杯。

下面是截图只是为了帮助您可视化:

alt text

回答

2

我认为这是来自'Project Explorer'视图的屏幕截图。它不显示确切的文件夹和文件结构,增加了一些从项目元数据构建的糖果。

  • 要查看项目的真实结构,请尝试切换到“导航”视图。
  • 在一个WAR文件导入时,Eclipse基本上做了两两件事:
    • 创建一个新的Web项目和副本战争的内容,新的项目“的WebContent”子文件夹。
    • 基于WAR,它构造项目的元数据(.project和.classpath文件)。
  • 的是,WAR包含jar文件的'Web应用程序图书馆的部分显示列表(在WEB-INF/lib目录
  • “进口类”(这也是我看到的第一次)似乎含有类在导入的WAR(WEB-INF/classes)中找到,为此Eclipse无法找到任何相应的源文件。要解决此问题,请在项目中创建一个新的Java源文件夹,并将您现在在'firstResource'
1

在Eclipse中,如果您使用的是Java Web开发视图,你可以完成以下任务:

  1. Tomcat服务器运行时提供servlet库
  2. Java运行时
  3. 其他需要的库

项目中的Web App库复制第一个设置,以便您不需要在开发框中安装本地Tomcat。

其余的听起来很乱。

您的src/JavaSource文件夹中包含原始Java文件。他们不应该在网页内容 - 这就是你的HTML,图像的JSP等

所以,一个典型的项目设置:

Project Name/ 
    JavaSource/ or src/ // holds all the Java Source Files, Servlets, Struts Actions 
    WebContent/   // Nice root folder to hold web content files 
     content files and folders 
     WEB-INF/  // Web App Config folder 
      lib/  // Libraries (but not tomcat ones) 
      web.xml 
      classes/ // Where your compiled Java goes, and configs (log4j.properties) 

有人把JSP WEB-INF里面也一样,它不需要在JSP文件状态下可访问,只能在Tomcat自行编译的状态下访问。

0

它的简单,eclipse提供了多视图到您的项目结构。您正在查看的视图肯定是Package Explorer视图。在这个视图中,前面有一个特殊图标的所有东西都是帮助程序,可以通过简化对外部库(由计算机上的软件提供或eclipse自身或其他项目)提供的特定内容来帮助您。

在eclipse中,进入菜单 - >窗口 - >显示视图 - >导航器 导航器视图会告诉你项目的真实文件夹结构。

2

Web应用程序库不是一个真正的目录,而是Eclipse认为是该项目的库的列表。

一般来说,这包括在的WebContent /所有jar文件的WEB-INF/lib目录/

有时,Eclipse中不再列出他们在Eclipse的Package Explorer中他们的真实目录...但他们还在那里如果你看另一个程序。

+0

但是它用于什么?你可以不用它吗? – Vidar 2008-12-09 09:08:49