Tomcat免安装版的环境变量配置以及Eclipse下的Tomcat配置和测试

Tomcat是目前比较流行的开源且免费的Web应用服务器,在我的电脑上第一次安装Tomcat,再经过网上教程和自己的摸索后,将这个过程 重新记录下来,以便以后如果忘记了可以随时查看。

注意:首先要明确一点,Tomcat与Java密切相关,因此安装使用之前要先安装JDK并设置JDK的环境变量,由于机子上已经安装好了JDK,也设置好了JDK环境变量,因此这里不再过多叙述,只说明我设置好的环境变量:

JAVA_HOME :F:\JDK_Kit

CLASSPATH: .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;   (最前面有一个点)

在path中的最前面添加:  ;%JAVA_HOME%\bin;  (前后都有个分号)

在cmd窗口中输入java -version就能查看环境变量是否设置成功:

我的JDK版本为1.8.0_45。

好了,这样就配置好了JDK的环境变量。下面开始操作Tomcat。

===========================================================================

首先百度搜索Tomcat,到Apache的官网下载,这里选择的是最新版Tomcat8

点击进去后选择的是zip格式的,也就是免安装版的,由于我的机子是64位Windows,因此选择如下:

下载完后解压到F盘下的我自定义的TomCat_8.0.24文件夹中:

解压完后,就要开始配置Tomcat的环境变量和一些设置:

在环境变量中新建TOMCAT_HOME,值为Tomcat所在的目录,也就是F:\TomCat_8.0.24

 

另外新建CATALINA_HOME和CATALINA_BASE,这里CATALINA_HOME是Tomcat的安装目录,CATALINA_BASE是Tomcat的工作目录,

暂时我并不区分,因此都将其值设为%TOMCAT_HOME%

          

关于CATALINA_HOME和CATALINA_BASE的区别请另外查询参考博文,

如catalina.home和catalina.base 区别  或者  CATALINA_BASE与CATALINA_HOME的区别 等等

 

配置完Tomcat的环境变量,我们要对Tomcat中的一些文件进行配置:

打开Tomcat安装目录下的bin文件夹,我们要对startup.bat和shutdown.bat进行补充,

对这两个文件进行编辑,在文件开始的第一行,也就是@echo off  之前加入如下两行:

SET JAVA_HOME = JDK目录

SET CATALINA_HOME = 解压后Tomcat的目录

对于我的系统来说,就是配置成:

SET JAVA_HOME = F:\JDK_Kit
SET CATALINA_HOME = F:\TomCat_8.0.24

  完成了这步后,以后就可以点击startup.bat启动服务器,点击shutdown.bat关闭服务器了,当然这只是其中的一种方式,

稍后会介绍启动和关闭Tomcat的几种方式。

 

接下来应该将Tomcat加入到服务中

从网上下载的zip版本的,需要将Tomcat加入到服务中,不然无法配置Tomcat,也会无法打开bin文件夹中的tomcat8w.exe这个程序。

从任务管理器中可以看到,在这个tomcat8w.exe程序上点击star按键,才能启动tomcat8.exe。

将tomcat加入服务的方式是在cmd中定位到bin文件夹所在的目录,输入 service.bat install  

然后会看到一系列刚才配置的环境变量,和提示Tomcat已经被安装:

注意:这里面的每一行都要明确显示出每个环境变量设置的值,如果有哪个参数没有值,只有显示双引号“”,就是出错的,

这种情况下,虽然tomcat8w.exe能打开,但是点击start按键是不会启动服务的(也就是无法切换到stop按键能按的状态)。

也可以通过cmd键入services.msc调出服务来看是否有Apache Tomcat8(默认为手动启动,如果改为自动启动,则开机Tomcat就会在后台启动)

 

到目前位置,基本的配置都已经结束,可能还有些小配置,如设置Tomcat的用户名和密码什么的,稍后会说到。

 

Tomcat的启动

将Tomcat配置完后,我们就关心这些配置到底有没成功,因此就需要将Tomcat启动来验证下,Tomcat有几种启动方式:

第一种:(不推荐)

    这种方式只能自己电脑启用(适合自己电脑测试web应用),别人电脑是无法连接到自己电脑的tomcat服务器的,经过多次验证!!!。    

    在命令控制台cmd中启动,在cmd中输入如下语句可以打开或关闭Tomcat服务器:

    net start 服务名

    net stop 服务名

    Tomcat的服务名都是Tomcat+版本号,如Tomcat6,Tomcat7。。。因为我的Tomcat版本为Tomcat8,所以这里的服务名就为Tomcat8

    这种方式在任务管理器中的启动显示的是:

    

    

    而后面两种方式则另外显示为:

    

    因此也从侧门反映出这种方式的异常之处,因此不推荐!不推荐!不推荐!

 

第二种:使用startup.bat这个批处理文件来打开Tomcat服务器,使用shutdown.bat批处理来关闭Tomcat服务器,对于这种方式如前面所说要加入

    两句话SET JAVA_HOME = JDK目录 和 SET CATALINA_HOME = 解压后Tomcat的目录

第三种:进入到Tomcat目录的bin文件夹下,打开Tomcat7w.exe程序,在打开的窗口中选择“star”按键来打开服务器,选择“stop”按键来关闭服务器。

 

Tomcat的验证

了解了Tomcat的多种打开方式,我们就可以来验证Tomcat是否能工作了,选择Tomcat启动的任意一种方式,如在cmd中键入net start Tomcat8 

 

提示Tomcat服务器启动成功,这时打开浏览器,输入 localhost:8080 

 

如果Tomcat能工作,则能打开Tomcat网站,则确定Tomcat已经能正常工作:

测试结束后,不要忘记关了服务器,按你选择打开的方式来关闭:

 

最后说一些小事项:

 1. Tomcat可以设置用户名和密码,在Tomcat目录中的conf目录下,有一个tomcat-users.xml文件,点击进去可以编辑用户名和密码

  在最后一行的</tomcat-users>上面增加一行:

  <user username="admin" password="123456" roles="manager-gui" />

  就可以把用户名和密码设为admin和123456

  

  这里还有个小知识点,role的角色决定了你是否是tomcat的管理员,如果是管理员,可以进行tomcat的管理,比如部署web引用。

 2. Tomcat的默认端口号为8080,可以在Tomcat目录中的conf目录下,打开server.xml,发现这么一行:

  

  可以看到端口号为8080,可以将此端口号改为任意端口号。

  但是在这里改的端口号不一定会在Eclipse中也改变,这点我没做过测试,但是看到一篇文章:

  http://www.2cto.com/kf/201308/232699.html,有空来测试下。

 

===============================================================================

以上就是Tomcat从下载到配置,最后启动和验证的所有过程,如果要利用Eclipse配合Tomcat来开发,还需要在Eclipse中进行Tomcat的配置

首先启动Eclipse,点击【窗口】,选择最后一项【首选项】,打开首选项窗口后,点击【Server】,选择其子项中的最后一项【Runtime Enviroments】,

这时点击窗口的【Add】按键就可以添加服务器了:

选择以配置好的Tomcat服务器:

设置好Tomcat所在目录和使用的JRE:

这里就完成了Eclipse和Tomcat的关联,但是还未创建Tomcat服务器。

 

要想创建Tomcat服务器,可以点击Eclipse下边控制台所在的工具栏上得【Servers】标签,会有如下提示:

那么我们就根据提示点击,会弹出如下窗口:

Eclipse自动地帮我们选择了【Tomcat v8.0 Server】选项,由于我们现在还没有资源,所以直接点击【完成】,可以看到这时的【Servers】标签:

完成Tomcat服务器的创建之后,还需要对Tomcat服务器进行配置,双击【Servers】标签下创建的服务器,就会弹出服务器的【Overview】窗口,找到【Server Locations】配置选项,选择【Use Tomcat installation】选项,这样下面的【Server path】会自动设置为Tomcat服务器的安装目录,之后再手动把【Deploy path】设置成“webapps”,这样就完成了在Eclipse中的Tomcat服务器所有的配置:

我们可以点击那个绿色的按键,这个按键就是启动服务器,我们会看到在【Servers】标签下的服务器状态已经变为了“start”,而且还有结束的按键也激活:

同时点击【控制台】标签,我们还可以看到一些信息:

说明在Eclipse中Tomcat已经启动成功,那么打开浏览器,输入  localhost:8080 :

这时可以看到确实Tomcat服务器已经可以工作了:

这就说明了Tomcat在Eclipse中已经配置成功并能正常工作了。

====================================================================================

后记

  会出现的一些问题:

从之前双击服务器打开【Overview】窗口后,可以看到在界面的右部分可以设置一些端口,有Tomcat端口,HTTP端口和AJP端口

1. 有时候会提示 (8005, 8080, 8009)端口被占用,那可能是因为别的软件给占用了这三个端口之一(这是最有可能的原因,很有可能是Javaw这个进程给占用),

  那么只要将其强制关闭即可,当然还有别的一些原因,可以看http://blog.csdn.net/zhouyingge1104/article/details/7243363这篇博文。

2.还有的时候我想修改端口就会弹出如下窗口:

  

  不清楚原因,但是偶尔过会又可以修改

3. 我自己的一个疑问就是,在服务器【Overview】窗口中的Tomcat端口为8005,为什么我上浏览器还是要输8080呢,而不是输入8005呢,这是我的疑问

 

以上这些问题,我会抽空再搜搜有没好的解答,今天就先到这里吧。。。

 

转载于:https://www.cnblogs.com/fjdingsd/p/4692976.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/431533.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java开发和structs的关系_java---springMVC与strutsMVC的区别

项目刚刚换了web层框架&#xff0c;放弃了struts2改用spring3mvc当初还框架的时候目的比较单纯---springmvc支持rest&#xff0c;小生对restful url由衷的喜欢不用不知道 一用就发现开发效率确实比struts2高我们用struts2时采用的传统的配置文件的方式&#xff0c;并没有使用传…

python unicode error_关于GAE中运行python出现unicode decode error

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼老问题了&#xff0c;但因为本人不会python语法但却要用&#xff0c;找了很久解决办法&#xff0c;比如添加一行# -*- coding: utf-8 -*-但还是不行。。主要errorUnicodeDecodeError: *ascii* codec can*t decode byte 0xb0 in pos…

【推荐】介绍两款Windows资源管理器,Q-Dir 与 FreeCommander XE(比TotalCommander更易用的免费资源管理器)...

你是否也像我一样&#xff0c;随着硬盘、文件数量的增加&#xff0c;而感到对于文件的管理越来越乏力。 于是我试用了传说中的各种软件&#xff0c;包括各种Explorer外壳&#xff0c;或者第三方资源管理器。 最后我确定下来经常使用&#xff0c;并推荐给您的是这两款软件&#…

java rpg项目代码_java rpg游戏代码(移动保存读取)

package ggg;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.util.*;import java.io.*;public class Tank1 extends JFrame{//用来存储对应的图片的二维数组 (这里的icon数组&#xff0c;只是用来将我们设置好的数组在界面上显示出来&#xff0…

java类加载器_java底层内功 第一章,类加载器的任性

java类是怎么加载的&#xff1f;类加载机制JVM主要包含三大核心部分&#xff1a;类加载器&#xff0c;运行时数据区和执行引擎。虚拟机将描述类的数据从class文件加载到内存&#xff0c;并对数据进行校验&#xff0c;准备&#xff0c;解析和初始化&#xff0c;最终就会形成可以…

Java学习二:Javac Java的学习(原创)

安装完了JDK&#xff0c;就可以编译、执行简答的Java程序了&#xff0c; 一、Javac ,Java 路径名和包名的关系&#xff1a; 在D盘下&#xff0c;建文件夹Test&#xff0c;在Test里创建文件Java1.java(类名要与文件名一致&#xff09; Java1.java : package Test; public c…

java的requestmapping_SpringMVC RequestMapping 详解

SpringMVC RequestMapping 详解RequestMapping这个注解在SpringMVC扮演着非常重要的角色&#xff0c;可以说是随处可见。它的知识点很简单。今天我们就一起学习SpringMVC的RequestMapping这个注解。文章主要分为两个部分&#xff1a;RequestMapping 基础用法和RequestMapping 提…

redis查询所有key命令_想在生产搞事情?那试试这些 Redis 命令

作者&#xff1a;鸭血粉丝出自&#xff1a;Java极客技术原文&#xff1a;mp.weixin.qq.com/s/WeAamgYYGQfxlsppsn9_lg哎&#xff0c;最近阿粉又双叒叕犯事了。事情是这样的&#xff0c;前一段时间阿粉公司生产交易偶发报错&#xff0c;一番排查下来最终原因是因为 Redis 命令执…

PrintArea打印,@media screen解决移动web开发的多分辨率问题,@media print设置打印的样式...

PrintArea打印&#xff0c;局部DIV打印插件&#xff0c;依赖JQuery。 github:https://github.com/RitsC/PrintArea 当打印时需要临时改变页面布局&#xff0c;可以使用 media print{ /* * CSS */ } 打印时生效&#xff0c;打印完自动失效。 需要屏幕自适应&#xff0c;或多种分…

java arraycopyof_Java中System.arraycopy()和Arrays.copyOf()的区别

System.arraycopy()这是一个由java标准库提供的方法。用它进行复制数组比用for循环要快的多。arraycopy()需要的参数有&#xff1a;源数组&#xff0c;从源数组中的什么位置开始复制的偏移量&#xff0c;目标数组&#xff0c;从目标数组中的什么位置开始复制的偏移量&#xff0…

python 异步 生产者 消费者_python 线程通信 生产者与消费者

1 """2 线程通信的生产者与消费者3 python的queue模块中提供了同步的线程安全的队列类,都具有原子性&#xff0c;实现线程间的同步4 Queue (FIFO&#xff1a; fist in fist out)5 LifoQueue (LIFO&#xff1a; last in fist out)6 PriorityQueue (优先级队列)78…

3、C#面向对象:封装、继承、多态、String、集合、文件(下)

面向对象多态 一、装箱和拆箱 装箱&#xff1a;将值类型转换为引用类型。object o 1&#xff1b;值类型给引用类型赋值 拆箱&#xff1a;将引用类型转换为值类型。int n (int)o; 强制转换为值类型 满足条件&#xff1a;两种类型是否存在继承关系。 int n Convert.ToInt32(&q…

mysql gui 分区_一文彻底搞懂MySQL分区

一.InnoDB逻辑存储结构首先要先介绍一下InnoDB逻辑存储结构和区的概念&#xff0c;它的所有数据都被逻辑地存放在表空间&#xff0c;表空间又由段&#xff0c;区&#xff0c;页组成。段段就是上图的segment区域&#xff0c;常见的段有数据段、索引段、回滚段等&#xff0c;在In…

js 获取域名_RapidDNS域名查询如何联动Goby

前言&#xff1a;http://RapidDNS.io 是一个秒级在线子域名和同IP域名的查询工具。目前拥有25亿条DNS记录&#xff0c;支持A、AAAA、CNAME、MX4种DNS记录类型。由于Goby程序对子域名收集方面不是很完善&#xff0c;这里特编写此插件作为其拓展。可以方便快速获取域名和ip地址信…

iOS 9应用开发教程之iOS 9新特性

iOS 9应用开发教程之iOS 9新特性 iOS 9开发概述 iOS 9是目前苹果公司用于苹果手机和苹果平板电脑的最新的操作系统。该操作系统于2015年6月8号&#xff08;美国时间&#xff09;被发布。本章将主要讲解iOS 9的新特性、以及使用Xcode 7.0如何编写一个简单的iOS 9的应用程序等内容…

python后端框架flask_Vue+Flask轻量级前端、后端框架,如何完美同步开发

导言我们的Vue2.0应用&#xff1a;简读-微信公众号RSS&#xff0c;即将进入后端开发。VueFlask作为轻量级前端、后端框架&#xff0c;非常适合组合起来快速开发。一个是js&#xff0c;一个是Python。Bonus:可以完美实现跨域调试&#xff0c;不需要JSONP&#xff0c;也不需要服务…

mysql查询错误_一个奇怪的MySQL查询错误

t_user表的phone_number字段是varchar(255)类型的&#xff0c;表示手机号&#xff0c;在查询某个手机号时&#xff0c;sql语句如下&#xff1a;SELECT phone_number FROM t_user WHERE phone_number 13400000000查询结果&#xff1a;phone_number---------------------------…

hdu 3308 线段树

输入一串数字&#xff0c;有两个操作&#xff1a;Q a b 查询a到b区间内严格递增子串的最大长度 &#xff1b; U a b 把第a位数字替换成b 。注意输入的编号是从0开始 解法&#xff1a;线段树维护区间的严格递增子串的最大长度即可。注意细节。 #include <iostream> #inclu…

kafka创建topic命令_0748-5.14.4-Kafka的扩容和缩容

​文档编写目的在Kafka集群资源使用已超出系统配置的资源时&#xff0c;或者有大量资源闲置造成资源浪费的时候&#xff0c;需要分别通过扩容Kafka和缩容Kafka来进行调整。本篇文章Fayson主要介绍如何进行Kafka的扩容和缩容&#xff0c;以及变更后的Kafka集群如何进行负载均衡的…

java 对话框 显示图片_Java对话框上显示图片

手掌心其实有很多种方法可以解决图片显示大小的问题:使用photoshop修改. 优点是可以节省系统资源, 显示图片的时候,不用做处理,缺点是需要了解ps的基本操作使用JDialog 自定义对话框. 优点 可以实现复杂的效果, 缺点,代码量比较多使用ImageIcon, Image 类 实现图片的缩放,. 优点…