IDEA构建Web项目,生成war包,以及部署到云服务器需要注意的问题



  我们的目标是运行web程序生成war包进而发布在ECS(云主机)上,使得可以公网进行访问。
  有教程说可以在服务器已经部署好的前提下直接自动发布到服务器的Tomcat,我尝试了几次没有成功,决定还是乖乖地复制过去,手动发布吧(有想尝试的可以去搜一下,有点点小复杂)。
  为了讲解清晰,先从创建一个新的项目讲起吧。

一,首先是在IDEA上新建web工程

  
1.File->New Project选择Web Application



图1.1



图1.2

2.填写好项目的名字和路径,点击确定,生成了最简单的文件目录

3.在WEB-INF目录下右键选择NEW->Directory,创建classes和lib两个目录
  classes用来存放项目编译后的java文件,lib用来存放jar包(类库)。



图1.3

4.下面设置项目的资源路径
  点击File->Project Structure->点击Modules->然后选中项目->在右侧选中Paths


图1.4

  –>选中 Use module compile output path–>修改两个路径都为刚才创建的class目录


图1.5

5.选择Dependencies选项卡
  点击右边的绿色+号–>选择第一项JARs or dirctories–>选择刚才创建的lib文件夹


图1.6

6.接下来配置Tomcat
点击右上角运行健左侧的tomcat标志进入配置Tomcat的窗口:


图1.7

  点击左上角绿色+号 ->Tomcat Server->local,创建一个新的Tomcat容器.
  –>输入新的服务名
  –>点击Application后的”Configure…”按钮,会弹出一个Application Servers按钮,在Tomcat处选择本地Tomcat安装目录即可。(这里会很智能的直接找到你的安装目录,不需要自己去找,很智能)
  如果点击绿色加号找不到Tomcat Server,就点一下下方的33 items more,应该是在里面,要是还是找不到的话,一个是搜一下tomcat的安装,再一个可能就是你安装的版本不对,看看是不是社区版的,这个版本免费但是功能不全,推荐下载旗舰版再破解。



图1.8

  这个时候你的Tomcat应该是带着一个红色的叉号的,是因为我们还没有配置artifacts

7.接下来在Tomcat上部署我们的项目
  首先配置打包方式artifacts,点击Artifacts选项卡



图1.9

  接下来,点击Run->Edit Configurations进入Run/Debug Configurations窗口
  –>选中上一步配好的Tomcat
  –>点击“Deployment”选项卡
  –>点击右上角的绿色+号->Artifact…



图1.10

  然后变成这样


图1.11

  Application context就是这个web访问路径的后续
  当我们部署在本地且端口设置为8080时:因为我设置Application context为空,则访问路径为:http://localhost:8080/, 但是当有多个项目要发布时,这样会容易混乱,所以我们一般以项目名为Application context进行区分,则访问路径为 http://localhost:8080/项目名/
  到这里配置工作就结束了,接下来开始导出war包

二.导出war包

  导出war包主要区别是我们不用它默认的方式,而是选择新的打包方式Artifacts

 选项中有web application exploded,这个是以文件夹形式(War Exploded)发布项目,选择这个,发布项目时就会自动生成文件夹在指定的output directory,
 如果选web application archive,就是war包形式,每次都会重新打包全部的,将项目打成一个war包在指定位置;

  因此我们选择web application archive



图2.1

  完成下面的配置


图2.2

  接下来还需要添加Directory Contents,否则会出现打包成功但是在resource下的文件不成功,地址指向web的根目录。



图2.3



图2.4

然后运行项目,就可以在制定路径下找到war包了(路径设置看图2.2)。

三.将war包发布到云服务器及注意事项

1.首先是需要在服务器上将Java-jdk(java编译环境),数据库和Tomcat安装并配置好



图3.1 我的云服务器配置

  很多云服务器在购买的时候已经默认安装了jdk和Tomcat,可以先找一下安装路径。但是需要注意的是大多数的云服务器是没有配置环境变量的,也就是新建CLASSPATH等系统变量需要我们手动操作。
  我买的是阿里云的ECS,基础版的,配置很低,(学生的话可以买学生版的,会便宜很多)。我预装的系统就包含了JDK和Tomcat,我有安装了轻量版的数据库MySQL。
  有人需要一些上传软件,不知道是不是Linux系统的限制,我都是直接在我这边本地复制然后粘到远程服务器上就好了(小文件没问题,大文件的话一个是慢,再一个可能会丢包)
  将war包复制到tomcat安装路径下的webapps下,重启一下tomcat服务就会自动将war包解压并发布,在webapps下会出现一个同名文件夹。发布成功。
  
  访问地址是:http://服务器IP:端口号/war包名/

  举例;http://30.29.30.216:8080/server/
  
            这里有几个地方主要注意:

1.查看端口是否被占用

  首先你需要在阿里云的控制台多开几个常用的端口(比如80,8080,3306,8888之类的)对于如何开端口百度一下很简单的,这里就不赘述了。
  像我就有一个端口(3306)被MySQL占了,用来和server进行互联,80被IIS占用了。8080被我搭建的本地Git库占用了(为了代码的私有性以及协作开发,放置在GitHub的云上就变成纯粹的开源了,一定的保密性是实验室需要)。故而我将8888分配给Tomcat并变成默认端口。

  WIN+R 出现运行框,输入cmd敲回车,输入“netstat -a -n”,查看端口是否被占用



图3.2 查看端口占用情况

2.修改Tomcat默认端口

  找到tomcat安装路径下的conf路径,找到 server.xml文件,可以用记事本打开(强烈建议下一个Notepad++,有很多文件是没法正常打开的)



图3.3

  修改默认端口


图3.4 将出现了被占用的端口修改成你新开放的端口号

3.tomcat的开始服务是一次性的

  在你使用tomcat bin路径下的startup.bat开启服务时,会出现一个黑色的命令窗口,一定要等他运行完,等出现startup时才是开启成功了,不成功的话可以回去再看一下端口是不是被占用了,同时还要注意一下前面自己的项目有没有部署成功。在日志里有写。但是这窗口不能关,一关就把tomcat给关了,很麻烦。
  
  我们需要新建一个tomcat的服务,并使之一直自动开启。在Dos界面下进入Tomcat的解压bin目录下,输入“service.bat install tomcat1”,tomcat1是服务的名字,可以任意修改。



图3.5 路径请换成自己的安装路径

  出现上图的结果则安装成功。下面运行bin下的shotdown.bat将服务关掉,然后cmd 输入services.msc,找到这个服务打开并将之设置成自动开启。这样就设置成功了。
  这样的话服务器端的配置就差不多完成了。

  • 30
    点赞
  • 87
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
回答: 在使用IDEA将Java Web项目部署时,可以使用Maven来管理项目构建和依赖。Maven是一个项目构建和管理的工具,可以方便地编译代码、管理依赖、管理二进制库等等。通过配置项目的pom文件,可以自动下载所需的jar,省去手动下载和管理依赖的时间。此外,使用Maven还可以不限制IDE,可以根据个人喜好选择使用Eclipse或NetBeans等开发工具。\[1\] 在IDEA中打部署Java Web项目,可以按照以下步骤进行操作: 1. 在IDEA中打开项目,确保项目的结构和配置正确。 2. 在IDEA的菜单栏中选择"Build",然后选择"Build Project",或者使用快捷键Ctrl + F9,进行项目构建。 3. 在IDEA的菜单栏中选择"Run",然后选择"Edit Configurations",在弹出的窗口中选择"Artifacts"选项卡。 4. 点击"+"号,选择"Web Application: Exploded",然后选择"From Modules",选中你的项目,点击"OK"。 5. 点击"Apply",完成配置后关闭"Project Structure"窗口。 6. 滑动到IDEA窗口的最底部,在`</Host>`标签上方添加以下代码: `<Context path="" docBase="/unnamed"><WatchedResource>WEB-INF/web.xml</WatchedResource></Context>` 7. 保存并关闭配置文件。 8. 在IDEA的菜单栏中选择"Build",然后选择"Build Artifacts",然后选择你的项目,点击"Build"。 9. 打开你的应用服务器,将生成war文件部署服务器上即可。 通过以上步骤,你可以使用IDEA将Java Web项目部署到应用服务器中。注意,具体的操作步骤可能会因为IDEA版本的不同而有所差异,请根据你使用的IDEA版本进行相应的操作。 #### 引用[.reference_title] - *1* [IDEA构建Maven web项目并打部署](https://blog.csdn.net/young_0609/article/details/117021395)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [IDEAweb项目进行打部署到tomcat](https://blog.csdn.net/weixin_44593504/article/details/117332956)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [IDEA将java web项目WAR文件,再发送到Tomcat服务器上](https://blog.csdn.net/qq_36148463/article/details/130715710)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值