MyEclipse 使用gradle 构建java web项目

2 篇文章 0 订阅

为什么要使用gradle?

  • 按约定声明构建和建设;
  • 强大的支持多工程的构建;
  • 强大的依赖管理(基于Apache Ivy),提供最大的便利去构建工程;
  • 全力支持已有的 Maven 或者Ivy仓库基础建设;
  • 支持传递性依赖管理,在不需要远程仓库和pom.xml和ivy配置文件的前提下;
  • 基于groovy脚本构建,其build脚本使用groovy语言编写;
  • 具有广泛的领域模型(DSL)支持构建;
  • 深度 API;
  • 易迁移;
  • 自由和开放源码,Gradle是一个开源项目,基于 ASL 许可。 https://github.com/gradle/gradle

MyEclipse 安装 gradle插件

  1. 打开myeclipse(此处使用myeclipse2015) > help > install from catalog…
    这里写图片描述

  2. 搜索框中输入gradle,选择all markets
    这里写图片描述

  3. 找到Gradle IDE Pack 3.8.x+1.0.x,也可以选择Buildship Gradle Integration 2.0 插件,功能都差不多。Gradle IDE Pack 中包含了Minimalist Gradle Editor,在编辑gradle文件时会有语法高亮效果,插件安装完成后需要在General > Editor > File Assaociations 中设置.gradle 文件的默认编辑器。
    这里写图片描述
    这里写图片描述

创建 gradle 项目

File > new > other >Gradle(STS) Project
Sample project 选择 Java Quickstart,会自动生成src/main/java,src/main/resources,src/test/java,src/testresources 文件夹。

这里写图片描述
项目结构如下:

这里写图片描述
build.gradle:

这里写图片描述

apply plugin:引入gradle 插件
sourceCompatibility:编译的jdk版本
jar:编译jar包用的
repositories:指定中央仓库,支持jcenter(),mavenCentral(),也可以自己指定maven仓库地址
dependencies:依赖引用
test:测试相关配置
uploadArchives:上传jar包

添加 web 配置

由于当前项目还只是一个普通的java项目,还不能发布到tomcat、jetty等容器运行,所以需要添加web相关配置。
选中项目,点击导航栏MyEclipse > Project Facets > Install Dynamic Web Module Facet。

这里写图片描述
这里写图片描述
这里写图片描述

此时多了个球形标志,说明已转换为web项目

这里写图片描述

添加jetty插件

apply plugin: 'jetty'

注意:在gradle 3.0 版本以上,jetty 插件已更换为gretty插件,如果还使用 apply plugin: ‘jetty’,会报找不到插件的错误。
添加完成后,需要刷新配置,选中项目,右键 > Gradle (STS) > Refresh All,或者使用快捷键 Ctrl F5
这里写图片描述

编译完成后,在Gradle Tasks 中会多出几个task,显示Gradle Tasks的方法: window > show view > other > Gradle Tasks

这里写图片描述

配置jetty运行参数

webAppDirName = 'WebRoot'    // 设置 WebApp 根目录

jettyRun{
    contextPath = "gradle01" 
    httpPort = 8081 // 运行端口
}

双击 Gradle Tasks 中的jettyRun,待启动完毕,在浏览器中输入 :http://127.0.0.1:8081/gradle01 ,看看运行结果,说明通过jetty插件,已经成功运行了java web项目。

这里写图片描述

使用本地tomcat容器运行 java web 项目

由于在开发中用惯了本地tomcat来部署项目,可能会更希望把项目运行在本地tomcat中。
先试试看能否在本地tomcat容器中部署 。
打开Servers,选择 Tomcat 7.0,右键Add Deployments ,在部署列表中,根本找不到我们要发布的项目 gradle01。

这里写图片描述

仔细观察,发现另外一个web01 项目却可以,对比一下差别,可以看到web01上多了一个 球形图标即web项目标志,而gradle01却没有,但是开始的时候明明已经添加过了,而且图标也出现过了,为毛现在没有了?
打开两个项目的.project 文件

web01 > .peoject

    <natures>
        <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
        <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
        <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
        <nature>org.eclipse.jdt.core.javanature</nature>
        <nature>org.eclipse.wst.jsdt.core.jsNature</nature>
    </natures>

gradle01 > .peoject

    <natures>
        <nature>org.springsource.ide.eclipse.gradle.core.nature</nature>
        <nature>org.eclipse.jdt.core.javanature</nature>
    </natures>

此处少了好几个 nature。

解决办法:
添加gradle eclipse-wtp插件,该插件会自动添加 natures 引用

apply plugin: 'eclipse-wtp'

再次Ctrl F5刷新项目,待编译完成后,发现web标志又回来了

这里写图片描述
部署运行,访问一切正常,跟普通java web项目没什么两样。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值