文档章节

使用Gradle自定义配置构建Web应用

拿客-三产
 拿客-三产
发布于 2017/03/13 15:21
字数 348
阅读 80
收藏 0

###自定义配置 War 插件默认使用 GBK 编码做为代码编码。当我们的代码中有中文字符,并且代码编码为非 GBK 编码时会报错编码GBK的不可映射字符此时我们需要自定义项目编译编码

//设置编码
[compileJava, compileTestJava]*.options*.encoding = 'UTF-8'

约定的项目结构也许并不能满足我们项目的情景,我们可以通过自定义配置来使得 Gradle 不使用约定配置编译项目: 我们随意变更一下上一篇使用Gradle第一次构建Web应用中的项目结构,变更后的结构如下:

├─srcdiv
│  └─com
│      └─manning
│          └─gia
│              └─todo
│                  ├─model
│                  │      ToDoItem.java
│                  │
│                  ├─repository
│                  │      InMemoryToDoRepository.java
│                  │      ToDoRepository.java
│                  │
│                  └─web
│                          ToDoServlet.java
│
├─static
│  └─css
│          base.css
│          bg.png
│
└─webfiles
    ├─jsp
    │      index.jsp
    │      todo-list.jsp
    │
    └─WEB-INF
            web.xml

我们需要在 build.gradle 中添加如下配置:

 //改变项目默认结构
 sourceSets {
 
     //设置源代码所在目录
     main {
         java {
             srcDirs = ['srcdiv']
         }
     }
 
     //设置测试代码所在目录
     test {
         java {
             srcDirs = ['testdiv']
         }
     }
 }
 
 //改变 Web 应用的源代码目录
 webAppDirName = 'webfiles'
 
 //将静态文件放到 static 路径,但是需要打包到 WAR 文件根目录下
 war {
     from 'static'
 }

这样我们的项目就可以正常编译并打包为可用 WAR 文件。 【编译结果与使用Gradle第一次构建Web应用相同】 相关代码

© 著作权归作者所有

拿客-三产
粉丝 110
博文 75
码字总数 121734
作品 0
丰台
程序员
私信 提问
【SpringBoot专题】快速体验

前言 在Spring 4推出来之前,我们的编码是存在一些问题,比如:大量的xml配置存在项目中,配置相当繁琐;整合第三方框架非常麻烦;开发效率和部署效率不高等问题。正是因为这些问题,Spring开...

张丰哲
2018/08/05
0
0
Gradle(入门)

Gradle Gradle 自动测试 打包 Gradle插件 多语言编程 Gradle 安装配置 SDKMAN方式 先安装sdkman 使用Bash运行 即可安装 Chocolate windows 上安装 chocolate PowerShell中运行 若操作系统默认...

mmythos
2017/12/30
0
0
SpringBoot相关

SpringBoot 目录创建于2017-12-18 SpringBoot 安装SpringBootCLI 安装SDKMAN 注意:所有类要和类 同包或子包 Springboot的测试模块 可以使用MockMvc来测试Controller层的代码 可以使用MockM...

mmythos
2017/12/30
0
0
Gradle入门(6):创建Web应用项目

本文由 伯乐在线 - JustinWu翻译,黄利民 校稿。未经许可,禁止转载!英文出处:Petri Kainulainen。欢迎加入翻译组。 如果你并不熟悉Gradle,在继续阅读本文之前,你应当先阅读以下文章。 ...

低至一折起
08/20
48
0
Gradle和Gradle插件

文章是翻译整理的官网文档developer.android/studio/build/ 一、Gradle和Gradle插件 Gradle:Gradle是一款帮助开发人员更快更好的编译、自动化运行和分发软件的工具。Gradle具有无与伦比的通...

都有米
2018/06/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Mybatis Plus删除

/** @author beth @data 2019-10-17 00:30 */ @RunWith(SpringRunner.class) @SpringBootTest public class DeleteTest { @Autowired private UserInfoMapper userInfoMapper; /** 根据id删除......

一个yuanbeth
今天
4
0
总结

一、设计模式 简单工厂:一个简单而且比较杂的工厂,可以创建任何对象给你 复杂工厂:先创建一种基础类型的工厂接口,然后各自集成实现这个接口,但是每个工厂都是这个基础类的扩展分类,spr...

BobwithB
今天
5
0
java内存模型

前言 Java作为一种面向对象的,跨平台语言,其对象、内存等一直是比较难的知识点。而且很多概念的名称看起来又那么相似,很多人会傻傻分不清楚。比如本文我们要讨论的JVM内存结构、Java内存模...

ls_cherish
今天
4
0
友元函数强制转换

友元函数强制转换 p522

天王盖地虎626
昨天
5
0
js中实现页面跳转(返回前一页、后一页)

本文转载于:专业的前端网站➸js中实现页面跳转(返回前一页、后一页) 一:JS 重载页面,本地刷新,返回上一页 复制代码代码如下: <a href="javascript:history.go(-1)">返回上一页</a> <a h...

前端老手
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部