精华内容
下载资源
问答
  • 1.选择项目如“DangDang”->右击->properties 2.配置项目 (1) (2).点击"Apply"->"OK"后在apache-tomcat-6.0.33\conf\Catalina\localhost下会自动生成Servlet.xml(当然也可以自己手动配置该文件) 3.运行...
    方法一 、配置节点:
    1.选择项目如“DangDang”->右击->properties


    2.配置项目
    (1)

    (2).点击"Apply"->"OK"后在apache-tomcat-6.0.33\conf\Catalina\localhost下会自动生成Servlet.xml(当然也可以自己手动配置该文件)

    3.运行项目

    点击tomcat图标即可运行,eclipse会自动去tomcat中找到Servlet.xml运行项目



    方法二 、配置server.xml

    1.打开D:\eclipse3.7\apache-tomcat-6.0.33\conf\server.xml

    2.在<Host></Host>之间添加配置节点

    <Context path="/Wikipedia" debug="0" privileged="true" reloadable="true"

    docBase="D:\eclipse3.7\workspace\Wikipedia\WebContent"

    workdir="D:\eclipse3.7\workspace\Wikipedia\work">

    <!-- IP限制,只允许本机访问,此处也可以随意设置来限制其他IP访问-->
     
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow=" 127.0.0.1" deny="all"/>
     </Context>

    3.启动项目

    展开全文
  • 以前没想过这么个问题:Tomcat怎么处理webapps下项目,并且我访问浏览器ip: port/项目名/请求路径,以SSM为例,Tomcat怎么就能将请求找到项目呢,项目还是个文件夹类型的? Tomcat部署webapps下项目方法位于:...

          以前没想过这么个问题:Tomcat怎么处理webapps下项目,并且我访问浏览器ip: port/项目名/请求路径,以SSM为例,Tomcat怎么就能将请求找到项目呢,项目还是个文件夹类型的?

     

          Tomcat部署webapps下项目方法位于:HostConfig#deployApps,别问怎么知道的,看源码,也可以支持看下我前面的博客,虽然介绍粗枝大叶,但是也能走到这步了。

    介绍下deployApps,最开始获取两个配置,分别是catalina-home/webapps以及catalina-home/conf/Catalina/localhost路径,filterAppPaths方法呢主要是过滤webapps下不想部署的项目,比如你有些大项目以前部署的,现在不想用了,但是不想删除呢?就可以忽略部署来节省Tomcat启动时间,具体方式就是在server.xml中Host元素里添加属性deployIgnore,支持正则表达式过滤。

    deployDescriptors、deployWARs是部署特定类型的项目,比如war包等,这里主要介绍的是deployDirectories,有兴趣的可以自行研究另外两种.

    image

     

         那我们明白了Tomcat部署项目还是得靠deployDirectories方法.

    HostConfig#deployDirectories方法如下,思路清晰,先介绍个大体,webapps下每个项目,只要是文件夹的(名字不为META-INF\WEB-INF)的,都会通过多线程的方式去”部署项目”,(这里需要提及一点,怕引起误会,这里Tomcat默认给配置的ExecutorService初始线程个数、最大线程个数都是1,这个就尴尬了,是啥原因引起的无从而就,如果调大个数是否能提高销量有待确认!)下面开始一点点介绍这个“部署”过程.

    image

     

    第一步,介绍ContextName实例化

        name是webapps下各个文件夹类项目的名字,FWD_SLASH_REPLACEMENT就是 # ,VERSION_MARKER就是 ## , 代码比较简单,直接看结果,比如webapps下doc目录,最后得到的四个属性值结果就是 baseName就是docs ,version就是 “”,path就是 /docs ,name就是 /docs , 其他正常项目名不含#都是类似,举两个个例:Root目录,baseName是Root,version就是“” , path就是 “”, name就是 “”  .

    image

     

     

    第二步.线程来调用DeployDirectory完成部署

    DeployDirectory是HostConfig内部类,实现了Runnable,持有三重要属性:HostConfig--外部类实例,ContextName--上面初始化的上下文名称类,File---当前webapps下目录的File句柄

    run方法是核心,一看还不是调用HostConfig#deployDirectory!

    image

    第三步. HostConfig#deployDirectory部署项目

    代码比较长,分成片段来记录:  前几行打印日志,就是Tomcat常见到的日志如下.  然后  xml文件引用指向 webapps下当前正在部署的项目(暂叫A吧),xml指向A项目META-INF/content.xml文件,而xmlCopy指向 catalina-home/conf/Catalina/localhost/A.xml,copyThisXml默认是false,deployThisXML默认是true.

    Deploying web application directory E:\Tomcat_Source_Code\apache-tomcat-8.0.53-src\catalina-home\webapps\docs

    image 代码片段二. 截取了try-catch块前半段, 由于deployThisXML默认是true,但是我们假设content.xml不存在的情况,就会执行if判断逻辑最后一段,contextClass默认是StandardContext,所以实例化了一个StandardContext!

    image

    代码片段三. try-catch块后半段逻辑:configClass默认是ContextConfig,是个Tomcat的监听器,实例化后在StandardContext上监听着,此外StandardContext赋值四个ContextName的属性.

    然后将StandardContext和StandardHost关联起来!  代码片段四.finally块做了一些收尾工作,这个留待时候再分析,先分析StandardContext与StandardHost的关联!

    image

    StandardHost和StandardContext关联起来步骤比较复杂!

      先判断是否webapps是否有项目名解析之后name一样的,抛出异常来不允许这样做!将StandardContext父类设置为StandardHost,将StandardContext作为value,项目名name作为key存入StandardHost的 children属性中(这也说明StandardHost的getChildren肯定是调用children.values()来获取);   部署一个项目之后就会调用项目StandardContext#start方法,项目启动之后触发对应监听事件.  StandardContext#start简单分析见这里,Tomcat8源码笔记(九)组件StandardContext启动流程--未完待续 

    image

    代码片段四.finally块

    部署完成之后,最终达成这样的效果,将部署信息存放在HostConfig的deployed中,比如 /docs--对应部署信息.

    image

    大体流程粗糙的写了一遍,具体细节,类我还需要熟悉在记录吧。

     

     

     

    转载于:https://www.cnblogs.com/lvbinbin2yujie/p/10704510.html

    展开全文
  • 1. 首先看下部署项目后webapps的目录 2. 首先说明怎么找到已经部署好的项目,再来解释原因. 2.1 首先点击项目,右键点击Show in Explorer. 2.2 2.3 2.4 此时部署的web项目已经找到. 3. intellij...

    intellij idea 使用Tomcat部署javaweb项目后到Tomcat的webapps目录下找不到项目.

    1. 首先看下部署项目后webapps的目录
      这里写图片描述
      这里写图片描述
    2. 首先说明怎么找到已经部署好的项目,再来解释原因.
      2.1 首先点击项目,右键点击Show in Explorer.
      这里写图片描述
      2.2
      这里的项目没有使用maven,所以输出目录是out,如果是maven则是target目录中,还有可能是idea版本的问题,所以名称不同,但是都是属于输出目录.18年的文章…
      这里写图片描述
      2.3这里写图片描述
      2.4这里写图片描述
      此时部署的web项目已经找到.
    3. intellij idea使用Tomcat部署项目后并不会把编译后的项目复制到tomcat的webapps目录下,但是它会把编译好的项目路径告诉Tomcat,让Tomcat来找到这个项目,其它的项目比如Tomcat的主页项目ROOT是打不开的,因为intellij idea 只让Tomcat运行了一个项目.
      接下来看一下war包的目录结构,也就是整个web项目编译后的目录结构
      这里写图片描述
      这里写图片描述

    4.tomcat有4中部署方式,eclipse的部署方式与IntelliJ idea的部署方式不同.

    tomcat部署方式分别是:
    (1)利用Tomcat自动部署
    项目放到webapps目录下,启动tomcat,就回自动部署

    (2)利用控制台进行部署
    控制台不是说cmd,而是tomcat启动后进入root页面,有个manager管理部署项目.
    进入tomcat的manager控制台的deploy区域进行设置就可以部署

    上面这两种都是自己用的,就是平时别人发包过来,然后丢进去,启动tomcat就部署,但是开发工具没有用上面两种.

    platform-zwml-admin这个是我的项目名称

    下面的在IntelliJ idea中使用
    (3)增加自定义的Web部署文件(%Tomcat_Home%\conf\Catalina\localhost\platform-zwml-admin.xml)
    在这里插入图片描述
    下面一种都在eclipse中使用
    (4)修改%Tomcat_Home%\conf\server.xml文件来部署web应用
    在这里插入图片描述
    所以web项目不是必须放在webapps文件夹里面才能部署的,放在其它位置为也可以部署,
    eclipse默认放在工作空间的.metadata文件夹,可以修改到其它地方,一般配置在webapps文件夹.
    而idea是配置到out文件夹,就是输出目录.

    展开全文
  • tomcat 部署项目

    2019-09-29 20:00:04
    这星期刚学了tomcat服务器在这里就教教大家怎么在集成开发环境中运行Tomcat部署项目 1. 下载Tomcat 网址:http://tomcat.apche.org/ 2. 安装 :目录名不要有中文名和空格 3. 启动 bin目录startup.bat启动 4. ...
    	这星期刚学了tomcat服务器在这里就教教大家怎么在集成开发环境中运行Tomcat和部署项目
    

    1. 下载Tomcat

     网址:http://tomcat.apche.org/
    

    2. 安装 :目录名不要有中文名和空格

    3. 启动

    • bin目录startup.bat启动

    4. 将Tomcat导入idea

    • 在run->edit config…
      在这里插入图片描述

    5. 在idea中创建javaEE项目

    在这里插入图片描述

    • 注意要把web Application 选上

    6. 启动Tomcat

    • idea会自动设置好启动项
    • 在这里插入图片描述
    • 点击启动标志就行了

    7. 验证启动成功

    • 项目启动之后会运行web文件夹中的index.jsp文件
    • 在这里插入图片描述
    • 会输出body标签中的内容 因为我把内容改为了hello servlet
    • 在这里插入图片描述
    • 所以输入hello servlet
    展开全文
  • MyEclipse下Tomcat无法部署项目 finish按钮无法点击

    千次阅读 热门讨论 2017-01-17 14:43:45
    将myeclipse的问题解决以后,项目环境已经搭建好了,可是在部署项目的时候,发现tomcat 不能部署,不知道在解决上面问题的时候怎么搞的,将Context-root弄没了  问题描述:MyEclipse环境下,使用Tomcat进行项目...
  • IDEA中使用tomcat部署项目遇到的问题: 1,tomcat中webapps目录下有原来的项目,但是实际使用中启动tomcat却没有看到这个项目启动。 2.这个目录下竟然没有当前正在开发准确说是正在tomcat上跑着的项目。。 最后...
  • Tomcat部署项目

    2016-10-17 15:02:00
    我们一般使用tomcat部署项目的时候地址栏上都是要输入ip:端口号/项目名称,那么我们怎么不要端口号和项目名称就能访问我们的项目呢 去掉端口号,打开tomcat安装的目录/conf/server.xml <Connector port="1111" ...
  • 没有在tomcat部署项目启动报错

    千次阅读 2017-02-21 08:31:45
    昨天兴致勃勃的跟着教程熟悉下ssh框架却发现tomcat启动报错,网上很多帖子都说缺jar包,可是我还没加入ssh的架构怎么会缺jar包呢,后来发现是tomcat的问题,我的tomcat服务器里面已经部署了很多项目,可能彼此之间有...
  • 先说下如何在eclipse下运行的web项目不加项目名和8080,直接使用localhost访问1.修改eclipse里的Server/Tomcat v7.0***/server.xml文件 如下图:将server.xml文件里的8080端口号改为80将server.xml文件里的8080端口号...
  • --需要部署项目Tomcat上。问题2:部署项目Tomcat服务器有多少种方式?--方式1:将项目复制一份到本地Tomcat的webapps文件夹下,再通过startup.bat启动Tomcat,随后访问项目。(这种方式比较麻烦,特别是在开发...
  • 部署能够在不关闭Tomcat的情况下直接将war包部署到服务器上。修改Tomcat配置文件需要修改tomcat的conf/tomcat-users.xml配置文件。添加用户名、密码、权限。启动服务器点击这个链接进入后台管理功能这里输入刚才...
  • 使用maven插件的热部署功能可以很方便的将maven项目部署到远程tomcat服务器,由于tomcat接受推送部署的接口较为稳定,因此在tomcat的7.x、8.x、9.x均适用。1,开启tomcat推送热部署功能编辑tomcat服务器下的conf/...
  • 1.聚合之前:idea配置tomcat后,会先将项目打包然后自动部署到本地的tomcat中,这个时候maven的workspace是这个web工程是没问题的 2.现在: war项目依赖前端项目的输出,maven-resources-plugin插件将后者输出的...
  • 方法一 1,先将eclipse里的项目打包成war包 右击项目-->export-->war file,出现这样一个界面 ...2、直接将打包成war包的项目文件件拷贝到Tomcat 文件下webapps目录中 点击bin目录下的startup.bat启动服务器
  • 学习javaWeb已经一个星期了,已经可以制作一些简单的网站,这时候突然想着让自己在Tomcat部署项目让宿舍同在一个局域网中的小伙伴访问以下,让他们看看我的学习成果。刚开始搞了半天,他们就是没有办法访问,在...
  • 无缘无故项目运行不了了 多反侦查发现publishing的时候卡在sitemap上了 这个是网站地图 文件很大一个1m多,之前没问题的,但不知道怎么就运行不了了 包下面错误 :A stack overflow error has ...
  • 那么可以思考一下迷你版的tomcat怎么实现的,然后再来实现动态请求处理。 tomcat的简单实现 1.1 tomcat既然能一直监听客户端的请求那么我们可以知道是在网络层面利用了Socket去实时监听虚拟主机的端口当一个http...
  • 1、最原始的做法是将java程序编译成.class文件,复制到...通过add和remove来部署你的项目,通过publish来部署项目tomcat你所设定的位置,默认是[盘符]:\workspace.metadata.plugins\org.eclipse.wst.server.c...
  • 怎么配置eclipse热部署本文章将会演示怎么配置eclipse调试器在不重启服务器的情况下支持热部署,热插拔或者热码替换。...假设一个简单的Spring MVC Web项目已经通过eclipse部署tomcat里。1.1 源...
  • 这两天接手公司其他人的一个springboot项目,这也是我第一次做springboot项目,所以现在自己的myeclipse上跑了一下,当时的tomcat6上部署,然后不报错但是也没成功,然后就更换了tomcat7,但是报异常 org.apache....
  • 我们在部署项目Tomcat中的时候,其访问路径一般为localhost:8080/projectName/接口,但是我们觉得这种很不方便,我们想要去除这个projectName,该怎么做呢? 2、修改server.xml 我们需要修改server.xml文件。在...
  • 本地路径 (类Mapping)(方法Mapping) ... 本地启动 这个项目可以访问 发布到tomcat后 http://localhost:8080/productInfo/productInfoBylike.do 404
  • ![图片说明](https://img-ask.csdn.net/upload/201612/12/1481509357_450048.jpg)
  • 怎么查看别人的tomcat服务器下部署了什么项目.怎么查看别人的tomcat服务器下部署了什么项目怎么查看别人的tomcat服务器下部署了什么项目怎么查看别人的tomcat服务器下部署了什么项目怎么查看别人的tomcat...
  • 我们把部署Tomcat的web项目,只要一启动Tomcat,那么我们的web项目也自动运行,这里申明一下,我的web项目是用的SSM框架。 方法一:构造方法 在标记@controller的控制类中利用构造防范执行初始化方法来启动项目。 ...
  • eclipse环境中,从SVN检出的maven项目无法部署tomcat下, tomcat检测不到可以部署项目,求教大神,是不是还要进行处理才能运行? 怎样处理?
  • 但是也有一定的需求,会使用外部tomcat部署项目。下面来看: 1.新建项目boot-tomcat-test 2.pom依赖:(添加spring-boot-starter-tomcat依赖,打包方式为war) <?xml version="1.0"...
  • 如何让tomcat自动部署web项目

    千次阅读 2015-07-24 15:15:15
    网上常常见到有人提问:我的web项目能通过tomcat跑起来但是tomcat安装目录下面的webapps文件夹里没有自动生成项目怎么回事或者哎呀,怎么web页面跑起来加载不了所有的图片。其实这些都归结于没有把项目部署到...
  • 环境说明:部署环境:centos7工程:maven管理的JavaWeb工程tomcat版本:tomcat7数据库:mysql8.0.13Java开发工具:idea一、linux版本tomcat下载及上传至linux环境1、下载linux环境下tomcat安装包,并使用xftp工具...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,010
精华内容 404
关键字:

tomcat怎么部署项目