由于是第一次使用gradle构建jfinal项目,也是第一次使用gradle,对gradle构建语法不是特别了解,通过查找资料大概了解了gradle语法后,写了一个简单的使用gradle打包jfinal项目的demo,如果有些地方不合适的还望大佬指正。
我的思路是让gradle打包后的文件目录和官网上的maven打包目录一样,然后通过官网提供的脚本启动打包后的项目。
通过查阅资料gradle可以通过在build.gradle文件中编写task来实现文件的copy,下面是具体的代码。
//xxx为自己的项目名 //copy项目启动所需要的config文件 task copyConf(type: Copy) { from('src/main/resources/config') into('build/package/xxx/conf') } //copy项目webapp下的所有文件 task copyWebapp(type: Copy) { from('src/main/webapp') into('build/package/xxx/webapp') } //copy项目依赖的所有jar task copyLibs(type: Copy) { from configurations.runtime into('build/package/xxx/lib') } //copy项目打包后的jar task copyJar(type: Copy){ from('build/libs') into('build/package/xxx/lib') } //把上述的task串联起来,打包项目 task buildxxx(dependsOn: [ 'build', 'copyLibs', 'copyConf', 'copyWebapp', 'copyJar' ]){}
把这5个task写入build.gradle文件中,在项目的根目录执行gradle buildxxx 来打包项目。
打包后的目录结构:
打包成功后在项目的根目录找到build/package文件下下的xxx目录,结构和官网提供的maven打包后的结构一样,然后通过官网提供的脚本来运行项目即可。
有几个同学也问过这个问题,谢谢你的分享,点赞 + 收藏