之前的几个小节,都是纯手工建文件夹,纯手工拷贝war包,或者纯手工解压个zip看看结果,,,,这还是我写了玩的helloWorld。若是玩大工程、几十个人的团队协同开发时,这么玩,,,,暴躁的程序员估计血压爆表了。

对于大点的java web项目,我们需要用到Tomcat 9.0 M10,gradle 3.2.1,IntelliJ 来搞定这一档子事。

1、软件下载安装,见<项目自动化建构工具gradle 入门0——环境 & 废话>。

2、打开IntelliJ,File -> New Project,弹出如下图所示界面:

3、如上图所示,把2个沟打上,选择我们下载到的gradle解压地址。完成如上图所示后,按Next,进入下一步,填写好项目名称之后点 Finish。我用的是LionWeb。

4、在左侧的project目录树中双击 build.gradle文件,如下图所示:

5、我们将 上图 红笔所画的 java 改为war,让gradle给我们编译java web工程吧。对了,IntelliJ默认是自动保存的,所以不需要按 保存。接着我们打开gradle面板,双击build,如下图所示。

6、这个时候我们看到了左侧project日目录树更新了。我们在目录上新建些文件夹、文件如下图所示:

7、上图所示的index.html,代码如下:

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>hello,world</title>
</head>
<body>
Hello,world!
</body>
</html>

  

8、现在呢,我们可以生成war包了,双击gradle面板的assemble。然后在左侧的project目录树上,看到war包已经出来了。如下图所示:

9、我们现在可以将这个war拷贝到tomcat的webapp目录下看看能跑不,

选中project目录树的LionWeb-1.0.war ,右键菜单-copy。进入windows的tomcat下的webapp目录,右键鼠标-粘贴。如下图所示

10、进入tomcat的bin目录,执行startup.bat,然后再浏览器中输入localhost:8080/LionWeb-1.0/index.html

11、到此证明我们之前做的没有错,生成的war包木有问题。但是老让人拷贝war到tomcat这个不能接受啊,我们得配置tomcat服务器让IntelliJ帮我们干活。

IntelliJ配置tomcat 
1、增加一个运行环境,点击右上角的运行旁边的下拉按钮,然后再点击 Edit Configurations...如下图所示:

2、弹出对话框,点击左侧增加按钮,添加一个tomcat服务器:

3、进入如下图所示界面,填写tomcat服务器的名字,其他的默认,点击OK就好了。

4、切换到Deployment的tab页面,点击右侧的增加按钮,然后找到需要的war包。

5、配置改war包在tomcat服务器下的目录,简单就是/,根目录。

6、回到主界面,如下图所示,点击下拉按钮,选择上图填写的名字tomcat9,然后点击右侧的运行三角形图标,如下图的1,2,3步骤。

7、此时,浏览器会自动弹出来,显示为:

ok,IntelliJ帮我们搞定了部署运行的事情。我们尝试改动下index.html,然后再次点击运行assemble,然后点击运行 tomcat9,选择Redeploy。刷新下弹出的页面,是不是更新了?步骤如下图所示:

果不其然,嘎嘎:

项目自动化建构工具gradle 入门5——在intellij中做一个gradle的web工程的更多相关文章

  1. 项目自动化建构工具gradle 入门4——javaWeb在浏览器中显示helloWorld

    在java应用中,其实做的最多的还是java web应用.所以现在我们做的就是用gradle构建一个简单的web项目,简单点,直接上代码吧. 1.进入目录D:\work\gradle\web,新建文件 ...

  2. 项目自动化建构工具gradle 入门3——生一个exe的helloWorld

    前两次呢,我们能够用一个外部的jar 来实现输出helloWorld.但问题是我每次都要用java -jar 来执行,这样我们自己玩还可以,让用户玩就不好了.所以我们生成一个exe给他们吧.这次我们仍 ...

  3. 项目自动化建构工具gradle 入门2——log4j输出helloWorld

    上一章节呢,有一个能跑的程序了.但是对做工程的人来说,用日志输出感觉比用System.out要有档次一点.比如使用log4j.直接上例子: 1进入D:\work\gradle\log目录  ,您电脑没 ...

  4. 项目自动化建构工具gradle 入门0——环境 & 废话

    gradle 是一个项目自动化构建工具.同类的产品还有ant ,maven等等.相比之下我更喜欢gradle,它语法简洁.兼容maven.ide集成很好. 学习使用gradle最快的方式是看文档,而且 ...

  5. 前端项目自动化构建工具——Webpack入门教程

    参考资料:https://www.webpackjs.com/(中文文档)   https://www.webpackjs.com/(官方文档) 首先有必要说明一下,本文侧重讲解webpack基本配置 ...

  6. 项目自动化建构工具gradle 入门1——输出helloWorld

    先来一个简单的例子,4个步骤: 1.进入D:\work\gradle\java 目录  ,您电脑没这目录? 那辛苦自己一级一级建立起来吧 新建文件build.gradle,文件内容是: apply p ...

  7. gulp前端自动化构建工具新手入门篇

    很久没有更新博文了. 经过了一次年前吐血的赶项目,终于在年后回血了.趁着有空,新学到了一个前端自动化构建工具-gulp. 现在我们通过这3个问题来学习一下: 1.什么是gulp? 2.为什么要用gul ...

  8. TTS-零基础入门-10分钟教你做一个语音功能

    在本片博客正式開始之前,大家先跟我做一个简单的好玩的 小语音. 新建一个文本文档,然后再文档里输入这样 一句话  CreateObject("SAPI.SpVoice").Spea ...

  9. IntelliJ IDEA启动一个普通的java web项目的配置

    文:朱季谦 这是我很久以前刚开始用IntelliJ IDEA时记录的笔记,正好赶上最近离职了,可以有比较多的时间把以前的记录整理一下,可以让刚接触到IntelliJ IDEA的童鞋学习如何在Intel ...

随机推荐

  1. jquery实现Tab选项卡菜单

    效果图: 默认选中  科技                                                                                 当鼠标悬停在 ...

  2. spring aop

    什么是AOP AOP(Aspect-OrientedProgramming,面向方面编程),它利用一种称为“横切”的技术,剖解开封装的对象内部,并将那些影响了多个类的公共行为封装到一个可重用模块,并将 ...

  3. SparkStreaming实现Exactly-Once语义

    作者:Syn良子 出处:http://www.cnblogs.com/cssdongl 转载请注明出处 译自:http://blog.cloudera.com/blog/2015/03/exactly ...

  4. 关于Quartz.NET作业调度框架的一点小小的封装,实现伪AOP写LOG功能

    Quartz.NET是一个非常强大的作业调度框架,适用于各种定时执行的业务处理等,类似于WINDOWS自带的任务计划程序,其中运用Cron表达式来实现各种定时触发条件是我认为最为惊喜的地方. Quar ...

  5. JQuery Datatables Columns API 参数详细说明

    ---恢复内容开始--- Data Tables: http://datatables.NET/ Version: 1.10.0 Columns说明 虽然我们可以通过DOM直接获取DataTables ...

  6. asp.net结合uploadify实现多附件上传

    1.说明 uploadify是一款优秀jQuery插件,主要功能是批量上传文件.大多数同学对多附件上传感到棘手,现将asp.net结合uploadfiy如何实现批量上传附件给大家讲解一下,有什么不对的 ...

  7. asp.net创建事务的方法

    1.建立List用于存放多条语句 /// <summary> /// 保存表单 /// </summary> /// <param name="context& ...

  8. Java微信公众平台接口封装源码分享

    前言:      这篇博客是在三月初动手项目的时候准备写的,但是为了完成项目只好拖延时间写这篇博客,顺便也可以在项目中应用我自己总结的的一些经验.今天看来,这些方法的应用还是可以的,至少实现了我之前的 ...

  9. 3.2 js六大数据类型

    js中有六种数据类型,包括五种基本数据类型(Number,String,Boolean,Null,Undefined),和一种混合数据类型(Object). 前面说到js中变量是松散类型的,因此有时候 ...

  10. 我的屌丝giser成长记-研一篇(下)

    研一生活的下学期开始,课程就比较少了,加上选修课,4门课而已,总体还是比较轻松的,让我有更过充裕时间来做自己的事情以及导师的项目.开始导师的一个新的webgis开发项目,叫做三峡库区事故型水环境污染风 ...