Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Feb 26, 2025. It is now read-only.

ShinChven/GradleWebApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

34 Commits

Repository files navigation

使用Gradle 构建JavaWebApp

Gradle是很强大的构建工具,不过如果你在天朝,你可能需要一个强大的网络环境。 本项目不具备太大实战意义,只是探索性地使用Gradle 构建Java Web项目,本人自己也只是使用它当学生和测试的模板。 本项目还在不间断施工中,请多多包涵。 如果在「食用」过程中发现Gradle build起来真TM恶心,建议赶紧回头使用Maven,Maven 在天朝使用确实更加顺畅。

Gradle的基本结构

一般使用Gradle 来构建一个项目,首先会有一个project文件夹,然后在project文件夹中会有一个或者多个module。project表示一个工作空间,而其中的module则是具体的应用,也可以是应用所依赖的library。

settings.gradle

在此文件中使用include ':folder' 语句配置某个文件夹为module文件夹,只有在这里配置了,开发工具才会增目标文件夹中运行build.gradle文件构建module。

build.gradle

Gradle项目中使用build.gradle 文件对项目进行构建:

1、根文件夹中的build.gradle 文件一般用于配置一些整个工程下的通用配置,比如repository之类的。

2、module 中的build.gradle 配置module 的构建。

SSH module

这是一个Gradle 构建的Struts2 Hiberante4 Springframeworks4 应用,详细配置请查看其中的build.gradle 文件。该module基本已经填完坑,可以拉下来直接运行。

Good luck!

SpringWebMVC

请参考这个仓库: https://github.com/ShinChven/SpringApp

构建War 项目

当你在module 的build.gradle中添加了war 插件(apply plugin: 'war')时,IDE会识别该module 为Java Web项目, 你可以使用一些配置来定义War包的结构,比如:

configurations {
 moreLibs // 配置该module 在构建时,既加载dependencies中的依赖,还加载「散装」的jar包
}
war {
 from '/src/main/webapp' // 指定WebRoot 路径
 webInf { from '/src/main/webapp/WEB-INF/' } // 指定 WEB-INF 文件夹路径.
 classpath fileTree('lib') // 指定 WEB-INF/lib 文件夹路径.
 classpath configurations.moreLibs // build 「散装」的jar包
 webXml = file('/src/main/webapp/WEB-INF/web.xml') // WEB-INF/web.xml 文件路径
}

在配置好war 以后,Gradle build 时会自动生成这样的项目结构:

一般你的工程结构需要是:

src/main/java -- java 代码

src/main/resources -- 配置文件

src/main/webapp -- WebRoot

build.gradle -- gradle 构建脚本

settings.gradle -- gradle 项目设置,在其中你可以配置目录下哪些文件夹是一个module

关于工程结构的配置请参照DEMO中build.gradle的war{}部分,

详情请查看gradle 的war 插件页面: http://www.gradle.org/docs/current/userguide/war_plugin.html

About

使用Gradle 构建Struts2、Springframework和hibernate 框架的Java EE 项目模板

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors

Languages

AltStyle によって変換されたページ (->オリジナル) /