之前使用过几次maven,真正使用发现有点麻烦包括XML的繁冗,不够灵活,学习曲线陡峭。因为对grails和groovy很熟悉,发现gradle是个很合适的构建工具。gradle是以 Groovy 语言为基础,面向Java应用为主.基于DSL(领域特定语言)语法的自动化构建工具,从maven转到gradle非常简单。 但使用gradle要解决几个问题,我是这么解决的
一、环境区分问题
gradle本身不提供类似maven profile机制,但想自己实现非常简单。主要是资源及配置问题,要区分开发环境、测试环境、验收环境和商用环境,每个环境中的配置有相同的地方,也有不同的地方。所有要改变原有resources目录结构使用
resources/public 作为公用目录
resources/${env} 作用不同环境对应的资源目录
env变量从命令中获取
//环境区分,默认开发环境
env = System.getProperty("env")?:"dev"
//maven仓库
repositories {
maven {
url "http://192.168.167.16:9090/nexus/content/groups/public/"
}
}
sourceSets {
main {
resources {
srcDirs = ["src/main/resources/public","src/main/resources/$env"]
}
}
}
打test环境包命令就是 gradle war -Denv=test
二、解决jetty使用问题
使用gradle jetty插件时要配置jdni数据源,另外运行jetty时jetty为了提供响应速度使用内存映射文件方式读取静态资源,运行时不能修改css、js、html,非常麻烦。所有要修改jetty差距默认配置
httpPort = 8080
stopPort = 9451
[jettyRun, jettyRunWar]*.with {
contextPath = 'MGSAdmin'
jettyEnvXml = file("src/config/jetty-web.xml");
webDefaultXml = file("src/config/jetty-webdefault.xml");
}
修改jetty-webdefault.xml配置useFileMappedBuffer设为false
<init-param>
<param-name>useFileMappedBuffer</param-name>
<param-value>false</param-value>
</init-param>
分享到:
相关推荐
gradle的jetty插件使用例子,详细参考:http://blog.csdn.net/xiejx618/article/details/38307289
Jetty9 配置使用HTTPS证书,访问你的服务器更安全,更好的配置方法。
SpringBoot+gradle+mybatis多数据源动态配置 AOP的方式实现数据源动态切换。
gradle使用手册中文版
Gradle使用手册
本文侧重于了解自定义properties文件,以及properties中的数据格式,在gradle中如何使用等知识点。 一、概述 在Android Studio 创建一个项目的时候,rootProject下面会生成gradle.properties和local.properties文件...
Gradle 配置阿里云,配置国内代理,配置HTTPS,替换maven central,替换google,替换gradle plugin,替换jcenter,全部项目可使用,放入%GRADLE_HOME%\init.d文件夹中即可
App开发过程中,基本都需要多个环境,比如开发环境develop,测试环境check,生产环境product。各个环境下,网络请求的url会有所区别,一般我们通过baseUrl进行切换。
放在用户目录下 USER_HOME/.gradle/init.gradle
gradle 是一个新兴的构建工具,称之为后起之秀也不为过。作为一个构建工具,它整合了ant和maven,灵活性和扩展性都远超ant和maven。gradle 是基于groovy 脚本语言的,而groovy是可以直接编译成java class 文件,直接...
gradle是一种新的版本构建工具,集合了ant、maven及ivy的优势,具有配置简单,功能丰富等特征,提供多种默认项目布局,本文档是一个方便学习的实践教程。只要能按照教程一步一步走下来,就能很好地掌握gradle这个...
gradle配置信息gradle配置信息gradle配置信息gradle配置信息gradle配置信息gradle配置信息gradle配置信息gradle配置信息gradle配置信息gradle配置信息gradle配置信息gradle配置信息gradle配置信息gradle配置信息...
1.gradle基本介绍 2.gradle构建一个java项目 3.gradle构建一个Android项目与编译打包. 4.gradle的多渠道打包 5.gradle依赖管理 ......................
这个工程代码,是在ECLIPSE下面建立的,应用Gradle作为构建工具,建立的一个多模块项目。注意不是Maven下的多模块项目。
使用springboot+kotlin+ktor+gradle搭建多模块项目例子,该项目整合MybatisPlus做为数据库框架,可搭配文章‘SpringBoot整合Ktor2与MybatisPlus’ 与 ‘ktor 2.0的使用教程之实现log日志和jwt封装与异常处理’一起...
在Android Studio上使用Gradle配置来管理我们的App,附件中就是测试代码
android studio 配置gradle 使用android.mk进行编译jni,简单的jni调用,使用android.mk进行编译,注意事项:app下的gradle,以及编译生成的 .h文件,复制修改为 .cpp时,里面的文件的宏逻辑,最好去掉这个宏(#...
Gradle下载与本地环境配置详细文档
Gradle 提供了: 一个像 Ant 一样的非常灵活的通用构建工具 一种可切换的, 像 maven 一样的基于合约构建的框架 支持强大的多工程构建 支持强大的依赖管理(基于 ApacheIvy ) 支持已有的 maven 和 ivy 仓库 支持传递性...
google推出了全新的Android Studio集成开发环境,其中Android项目的结构与Eclipse的Android项目结构有很大的区别,原因就在于两开发环境使用的构建工具不同。 Android Studio使用Gradle构建工具,Eclipse的ADT插件...