一、端口占用
今天第一次用 Eclipse 使用 Tomcat 服务写 jsp,上来就给我来个问题,贼难受。
一开始提示 8080 和 8005 两个端口被占用,查了一下是我把 Tomcat 服务启动了,用 Tomcat 自带的 GUI 程序 tomcat9w.exe (就在 tomcat 目录里的 bin 目录下)关闭服务就好。
分析一下原因,这是因为 Tomcat 和 Eclipse 共用一个服务(),毕竟当初设置 Tomcat installation directory 时用的是 Tomcat 安装的目录(如下图),当我们在 Eclipse 中为一个项目添加 Tomcat 服务后,启动服务的任务就交给 Eclipse 了,所以在用之前先把 Tomcat 关掉。
当然如果想打开多个 Tomcat 服务,可以去 web.xml 里改一些东西,网上可以找到教程。
二、404
接着运行 jsp 时,第二个错误又出来了,Tomcat 服务连接不上(404),这是因为 Tomcat 启动时会按照一定的顺序找几个文件,而这些文件在 Tomcat 的安装目录下。
先说明一下,当我们将 web 项目部署到 Tomcat 中,是要将项目复制到 Tomcat 目录下的 webapps 中去,但是现在我们通过 Eclipse 创建的 web 项目却在 Eclipse 的 workspace 中,也就是说 Eclipse 将 Tomcat 的 Server Location 重定向到 Eclipse 的 workspace 中了。
首先,我们双击 Servers 视图中的蓝色链接
在弹出的界面(Overview)中,(这是我已经改完了的)我们会发现 Server Location 是灰色的,无法更改。
解决方法:在 Servers 视图的蓝色链接上鼠标右键,点击 Add and Remove。
右边选中你的项目,点击 Remove。
然后你会发现,原来灰色的地方可以改变了,我们在 Server Locations 下选择第二个 Use Tomcat installation(takes control of Tomcat installation .
接着看下面的Deploy path,点击右边的 Browse 找到你的 Tomcat 安装目录下面的 webapps目录,选中它就好了。
完成了上述步骤后,不要忘了这是一个文件,在写 Java 代码的时候,你是不是时常忘记 Ctrl + S 了?更改完后要记得保存。
改完了,保存了,不要忘记将项目添加回去。老规矩,选中项目 Add 然后 finish。
最后测试一下,新建一个 jsp 文件,运行一下。
Ok,大功告成。