gradle-shell 集成 spring-shell,gradle,spring-loaded 以支持 spring-boot 应用的修改/刷新开发流程。原来java web 应用开发也可以如此简便!
spring 为java web应用提供了坚实的基础,spring-boot朝着快速开发迈出了一步,但相比grails在开发效率的支持方面还是有一些欠缺,缺少**修改/刷新**开发流程支持。
gradle-shell集成 spring-shell,gradle,spring-loaded 以支持spring-boot应用的**修改/ 刷新**开发流程。包含两个部分,一个是 gradle-shell-plugin 插件,需要在 spring-boot应用的 builde.gradle 文件中加入该插件。另外一个是 spring-shell 应用,提供了以下命令:
1 run-app:通过 gradle application plugin 执行应用
2 start-monitor:开始监控源码目录
3 stop-monitor:停止监控源码目录
执行 start-monitor 之后,在项目中的源文件变化将会触发相应的gradle task执行,如果变化的文件名后缀是.java,compileJava task 被调用,如果文件名后缀是 .groovy,compileGroovy task被调用,其它后缀的文件名 processResources task 被调用。源码的变化自动同步到 build 目录中。
run-app 在执行应用时自动加入了spring-loaded启动参数,classpath 上任何.class 文件的变化都会被 spring-loaded 自动识别并刷新。基本做到了在 IDE 中修改源码,浏览器刷新立即看到结果。
安装 gradle(项目开发使用的是1.9),设置 GRADLE_HOME 参数
下载源码
进入 gradle-shell-plugin 目录,执行 gradle install,安装 gradle-shell-plugin 到本地 maven 仓库
在你自己项目的 build.gradle 中加入 gradle-shell-plugin
buildscript{
repositories{
mavenLocal()
}
dependencies{
classpathgroup:'org.gradleshell',name:'gradle-shell-plugin',version:'0.1.0'
}
}
applyplugin:'GradleShell'
进入 gradle-shell 目录执行 gradle distZip,将在 build\distributions 目录下生成安装文件。
解压安装文件,设置 GRADLE-SHELL-HOME 环境变量(“-”替换为“_”),添加 GRADLE-SHELL-HOME/bin 到 path
在你自己项目的目录中执行 gradle-shell,如果一切正常,将显示spring-shell的命令行提示。
如果不想编译源码,可在这里下载安装包,手工安装 gradle-shell-plugins 到本地 maven 仓库
gradle-shell-0.1.0.zip
gradle-shell-plugin-0.1.0.jar
gradle-shell-plugin-0.1.0.pom
task javaSourceGen (type:Exec){ commandLine "cp","src/main/resources-${cpEnv}/Iprotocol_bz.txt","src/main/java/com/caiqr/caipiao/wsdl/hecai/" commandLine "mv","src/main/java/com/caiqr/caipiao/
Gradle各版本下载地址:http://services.gradle.org/distributions/ 我们下载都是all版本,里面包含了Gradle SDK的所有相关内容,包括:源码、文档、示例等。 下载之后进行解压,我们可以得到如下目录清单: docs----API、DSL、指南等文档getting-started.html----入门链接init.d----gradle的初始化脚本目
看着bin目录下就一个gradle.bat,也很少研究bat文件,现在就学习一下吧! //@放在命令行前将关闭命令回显,非DEBUG模式,@echo off ,这条命令是关闭回显,就是不显示后面的命令执行情况,并且部分命令的执行结果页不显示 @if "%DEBUG%" == "" @echo off //rem表示注释,REM是批处理中的注释命令,@REM的作用与REM相同,只不过在回显
4.1 Writing Your Own Custom Tasks The Gradle DSL supports a task block for defining your own custom tasks. The API includes a wide range of existing tasks (like Copy , Wrapper , and Exec ) that you ca
Gradle各版本下载地址 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hanfengzqh/article/details/78184851 Gradle各版本下载地址:http://services.gradle.org/distributions/ 我们下载都是all版本,里面包含了Gradle SDK的所有相关内容,包括:源码、文档
task java_version(type: Exec) { workingDir "${buildDir}" if (System.getProperty('os.name').toLowerCase(Locale.ROOT).contains('windows')) { commandLine 'cmd', '/c', 'java -version'
Git https://skyao.gitbooks.io/learning-git/installation/ubuntu1604.html sudo add-apt-repository ppa:git-core/ppa sudo apt-get update sudo apt-get install git gitbook https://skyao.gitbooks.io/leaning-
测试是 Web 应用开发过程中不可获缺的工作。Nuxt.js 尽量帮助你简化这部分工作。 端对端测试 ava 是一个很强大的 JavaScript 测试框架,结合 jsdom,我们就可以轻松地给 nuxt 应用进行端对端测试。 首先,我们需要添加 ava 和 jsdom 作为项目的开发依赖: npm install --save-dev ava jsdom 然后在 package.json 中添加
第三方 SDK C#: v2ray-dotnet-sdk 自动化工具 V2Ray 使用下列自动化工具进行编译和发布。 Bazel: 用于编译和打包。 Azure DevOps: 用于部分项目的自动化发布。 Google Cloud: 用于部分项目的自动化发布。 CloudFlare: 用于支持官网和域名解析。
剖析性能 使用 Devel::NYTProf,或 Devel::DProf。 分析代码质量 使用 Perl::Critic,它基本上是针对 Perl 的 lint。 分析变量结构 使用 Data::Dumper。
Gradle工具API(参见Chapter.65.Embedding Gradle),用于IDEs和其他工具整合Gradle,总是使用Gradle守护进程执行构建.如果你是从IDE内部执行构建,那么你是在使用守护进程,而且不需要在你的环境中允许Gradle守护进程. 但是,除非您已明确启用的Gradle守护进程在你的环境的,你在命令行中的构建不会使用摇篮守护进程。
主要内容:常用源码编辑工具介绍,集成开发工具介绍本节介绍一下 Java 常用的几个开发工具。下面这些工具或许功能和作用不同,但是有着一个共同的主旨,那就是——它们都是为了给 Java 编码和开发提供卓越的支持。 常用源码编辑工具介绍 Java 源代码本质上其实就是普通的文本文件,所以理论上来说任何可以编辑文本文件的编辑器都可以作为我们的 Java 代码编辑工具。比如:Windows 记事本,Mac OS X 下的文本编辑,Linux 下的 vi
development tool(开发工具) LoopBack 提供了两组基本的应用开发工具: slc loopback, 是个命令行工具用于创建和修改LoopBack应用。 StrongLoop Arc, 是个图形化工具拥有开发,部署和监控LoopBack应用。 slc 命令行 slc 命令行工具将辅助开发人员在整个开发周期中生成和修改各种应用组件: 使用应用生成器 迅速生成原型应用(scaff
测试是 Web 应用开发过程中不可获缺的工作。Nuxt.js 尽量帮助你简化这部分工作。 端对端测试 ava是一个很强大的 JavaScript 测试框架,结合jsdom,我们就可以轻松地给nuxt应用进行端对端测试。 首先,我们需要添加ava和jsdom作为项目的开发依赖: npm install --save-dev ava jsdom 然后在package.json中添加测试脚本,并配置