当通过Netbeans或Eclipse运行时,jsp页面具体部署在哪里?

当通过Netbeans或Eclipse运行时,jsp页面具体部署在哪里?,eclipse,jsp,tomcat,netbeans,Eclipse,Jsp,Tomcat,Netbeans,在Netbeans中,我创建了一个新的默认web应用程序项目,该项目具有index.jsp。在Tools>Servers中,我已经将Netbeans指向了提取Tomcat的位置(C:\apache-Tomcat-7.0.42) 我运行程序,打开浏览器,显示index.jsp文件 我不明白的是,index.jsp文件没有被自动复制到Tomcat文件夹中,并且仍然有效。我认为要使文件工作,必须将其复制到C:\apache-tomcat-7.0.42\webapps\ROOT\WEB-INF文件夹中

在Netbeans中,我创建了一个新的默认web应用程序项目,该项目具有
index.jsp
。在
Tools>Servers
中,我已经将Netbeans指向了提取Tomcat的位置(C:\apache-Tomcat-7.0.42)

我运行程序,打开浏览器,显示
index.jsp
文件

我不明白的是,
index.jsp
文件没有被自动复制到Tomcat文件夹中,并且仍然有效。我认为要使文件工作,必须将其复制到
C:\apache-tomcat-7.0.42\webapps\ROOT\WEB-INF
文件夹中

  • Netbeans如何执行
    index.jsp
    文件而不将其复制到Tomcat文件夹
  • 当我在Netbeans和Eclipse中运行该程序时,它显示它正在启动Tomcat服务器。它是在
    C:\apache-tomcat-7.0.42中启动同一台服务器,还是创建一个单独的“虚拟”类型的服务器实例并在Netbeans/Eclipse工作区中运行

  • 首先,您需要知道Tomcat有两个可配置的目录:

    • CATALINA\u HOME
      ,您选择安装Tomcat的目录。Eg<代码>c:\Program Files\Apache软件基金会\Tomcat 6.0
      。Tomcat使用此变量查找其内部类和库

    • CATALINA_BASE
      配置文件和目录的目录,例如web应用程序目录。如果未设置
      CATALINA\u BASE
      ,则默认值为
      CATALINA\u HOME
      。Eg<代码>C:\Users\JVerstry\.netBeans\7.1.2\apache-tomcat-7.0.22.0\u base


    网虫 在NetBeans中,您将看到:

    NetBeans将文件复制到Catalina基本目录以进行部署。此目录位于用户配置文件目录中


    日食 在eclipse中,您将看到:


    默认情况下,eclipse在工作区的
    .metadata
    目录中复制要部署的文件。

    Tomcat创建了在eclipse工作区中运行的Tomcat服务器的单独实例(不确定Netbeans)。因此,分别创建server.xml、catalina.policy、tomcat-users.xml和web.xml文件。更多信息请访问

    当我创建第一个Tomcat服务器时,为什么是一个服务器项目 在我的工作区中创建

    将创建Servers项目以及与该项目关联的子文件夹 Tomcat服务器,用于保存server.xml、catalina.policy、, tomcat服务器的tomcat-users.xml和web.xml文件。在WTP中 2.0.x及更高版本,catalina.properties也包括在内。这使得修改这些文件更容易。它还允许这些 文件应为“工作副本”,与找到的副本分开 在实例位置的conf目录中。这避免了 如果发生以下情况,可能会干扰正在运行的Tomcat服务器 修改服务器项目中的文件时 服务器正在运行

    此服务器项目必须保持打开状态,Tomcat服务器才能正常工作 对。请注意,使用“关闭不相关的项目”命令 可能会无意中关闭服务器项目。重新打开服务器 如果发生这种情况,请创建项目

    您可以使用Netbeans或Eclipse轻松地完成部署任务。跟随 这些步骤

  • 首先,让您的项目没有bug/错误
  • 如果项目运行正常,则右键单击根文件夹 从netBeans或Eclipse的项目列表中
  • 单击“清理并生成”选项
  • 名为Dist的文件夹将被创建到您的项目目录中 可以使用资源管理器查看dist文件夹包含projectname.WAR 文件
  • 现在打开您的tomcat web服务器,单击“管理应用”登录 正确的证件
  • 转到“要部署的WAR文件”部分
  • 浏览我们的war文件并点击部署按钮
  • 现在,您可以在应用程序列表中看到您的应用程序
  • 点击你的申请
  • 享受:)


    我的catalina基本文件夹指向
    C:\apache-tomcat-7.0.42
    ,但当我创建servlet项目时,在
    F:\Programming\Java\HelloWeb\build\web\web-INF\classes\org\mypackage\hello
    中创建了
    NameHandler.class
    文件。我搜索了tomcat目录,发现
    .class
    文件不在那里。我的HelloWeb项目也没有任何痕迹。因此,我的问题仍然存在,即使
    .class
    文件实际上没有部署到tomcat目录中,程序如何工作?请打印下一个:
    String realPath=request.getRealPath(“”)。它在哪里?
    request.getRealPath
    已被弃用,因此我尝试了
    String strabsolutionpath=servletContext.getRealPath(“/”);字符串realpath=request.getServletPath(),结果是'F:\Programming\Java\HelloWeb\build\web`对此表示抱歉。怎么回事?找到要查找的文件了吗?再次重复我的问题:该文件位于HelloWeb project的文件夹中。我想问的是,在这个文件夹中,它是如何工作的,而不是部署在C驱动器中的tomcat文件夹中?