GradleDemo 是一个基于 Gradle 构建工具的 Java Web 示例项目,展示了如何使用 Gradle 构建一个简单的 Servlet 应用程序。该项目演示了 Gradle 的基本配置、依赖管理以及 Java、Groovy 和 Web 应用的集成开发。
- 构建工具: Gradle
- 编程语言: Java (JDK 1.5+)
- 测试框架:
- JUnit 4.11
- Spock Framework 0.7 (基于 Groovy 2.0)
- Web 技术:
- Java Servlet API
- Java EE 7.0
- 脚本语言: Groovy 2.0.5
- 打包方式: WAR (Web Application Archive)
gradledemo/
├── build.gradle # Gradle 构建配置文件
├── settings.gradle # Gradle 项目设置文件
├── gradlew # Gradle Wrapper 脚本 (Unix/Linux/Mac)
├── gradlew.bat # Gradle Wrapper 脚本 (Windows)
├── gradle/ # Gradle Wrapper 相关文件
└── src/
├── main/
│ └── java/
│ └── demo/
│ ├── Hello.java # 核心业务类
│ └── HelloServlet.java # Servlet 控制器
└── test/
└── groovy/
└── demo/
└── HelloTest.groovy # Spock 测试用例
- 提供一个简单的
sayHello()方法 - 返回字符串 "Hello,Gradle!"
- 作为核心业务逻辑的示例
- 继承自
HttpServlet - 使用
@WebServlet注解配置,映射到根路径 "/" - 处理 HTTP GET 请求
- 调用
Hello类的方法并将结果输出到响应流
- 使用 Spock Framework 编写测试用例
- 测试
Hello类的sayHello()方法功能 - 采用 BDD (行为驱动开发) 风格的测试语法
- JDK 1.5 或更高版本
- 支持 Servlet 的 Web 容器 (如 Tomcat、Jetty 等)
使用 Gradle Wrapper 构建项目 (推荐):
Unix/Linux/Mac:
./gradlew buildWindows:
gradlew.bat build./gradlew test./gradlew war构建成功后,WAR 文件将生成在 build/libs/ 目录下。
- 将生成的 WAR 文件部署到 Servlet 容器(如 Tomcat)
- 启动容器
- 访问应用根路径,应该能看到 "Hello,Gradle!" 的输出
- groovy-all (2.0.5): Groovy 语言完整库,支持 Groovy 脚本和测试
- junit (4.11): Java 标准单元测试框架
- spock-core (0.7-groovy-2.0): 基于 Groovy 的 BDD 测试框架,提供更优雅的测试语法
- javaee-api (7.0): Java EE 7.0 API,包含 Servlet、JSP 等 Web 开发所需的接口
- 标记为
providedCompile,表示运行时由容器提供,不打包到 WAR 中
- 标记为
- java: 支持 Java 项目的编译和构建
- war: 支持 Web 应用打包为 WAR 文件
- groovy: 支持 Groovy 语言的编译和测试
- 源代码兼容性: Java 1.5
- 项目版本: 1.0
- 仓库: Maven 中央仓库
- 轻量级示例: 代码简洁,适合学习 Gradle 构建工具的基本用法
- 多语言支持: 同时使用 Java 和 Groovy,展示混合语言项目的配置
- 现代化测试: 采用 Spock 框架,提供更简洁的测试代码
- 标准 Web 应用: 使用 Java EE 标准的 Servlet 注解,无需 web.xml 配置文件
- 创建者: luowei
- 创建时间: 2014年4月20日
注意: 本项目使用的某些技术版本较旧(如 Java 1.5、Groovy 2.0.5),建议在学习和参考时考虑升级到更新的版本以获得更好的性能和安全性。