`
somefuture
  • 浏览: 1090001 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

使用gradle构造Java工程

 
阅读更多

大家学习一个新工具,第一步一般是在自己的机器上手动安装其。

打开工作空间,新建目录结构如下:

└── src
    └── main
        └── java
            └── hello

 之所以要这样,是因为gradle的Java插件默认扫描这样的目录来查找Java代码。

 

hello是我们的包,在里面新建Java类。比如:

package hello;
import org.joda.time.LocalTime;
public class HelloWorld {
  public static void main(String[] args) {
    LocalTime currentTime = new LocalTime();
    System.out.println(currentTime);
    Greeter greeter = new Greeter();
    System.out.println(greeter.sayHello());
  }
}

 和

package hello;

public class Greeter {
  public String sayHello() {
    return "Hello world!";
  }
}

 

 

接下来新建gradle配置文件build.gradle:

apply plugin: 'java'

repositories {
    mavenCentral()
}

sourceCompatibility = 1.8
targetCompatibility = 1.8

dependencies {
    compile "joda-time:joda-time:2.2"
}

jar {
    baseName = 'gs-gradle'
    version =  '0.1.0'
}

 第一行申明使用Java插件。因为gradle不是只支持Java,其他很多语言也可以通过gradle构建。所以gradle没有默认使用Java插件。

后面申明使用maven的库,后面是代码版本,然后是依赖申明,这里为了演示,使用了joda。后面是构建为jar包的配置,构建后jar的名称就是gs-gradle-0.1.0.jar。

 

现在在根目录(也就是build.gradle的目录)执行

gradle build

 就会看到结果。

然后我们继续。

打开buidl.gradle文件,在最下面增加一个任务:

task wrapper(type: Wrapper) {
    gradleVersion = '2.3'
}

 保存后执行

gradle wrapper

 你会发现生成了不少新东西,比如gradlew。这些东西类似于绿色版gradle下载器。所以如果是团队合作开发,只要大家都从版本控制服务器下载了你那个buidl.gradle,大家执行的结果就一样。

然后我们执行

gradlew build

 它会开始下载相应版本的gradle(版本就是上面task wrapper指定的),然后自动构建。

 

这个时候,如果你兴高采烈的跑去执行

gradlew run

 ,会发现不可以。

为了让jar包能执行,我们继续修改build.gralde:

apply plugin: 'application'

mainClassName = 'hello.HelloWorld'

 应用了application插件,并指明了主类。

然后执行gradle run,就可以正常输出了。

1
1
分享到:
评论

相关推荐

    使用gradle构建Spring源码工程需要的Spring-chlib-repack-3.2

    在IT行业中,构建Java应用程序时,我们经常使用构建工具来自动化构建过程,如Maven或Gradle。本主题聚焦于使用Gradle构建Spring源码工程,特别是与`Spring-chlib-repack-3.2`相关的知识。这个特殊版本的Spring库是...

    gradle-git-0.8.0.zip

    1. **Gradle**:学习如何配置和使用Gradle构建脚本来管理Java项目,包括定义依赖、任务和插件。 2. **Git**:理解Git的基本操作,如克隆、提交、推送、拉取、分支管理和合并,以及如何解决冲突。 3. **Java空值...

    Mybatis逆向工程JAVA程序

    3. **运行逆向工程**: 使用Mybatis提供的`mybatis-generator-maven-plugin`或者`mybatis-generator-core`库,通过Maven或Gradle执行逆向工程任务。这一步会根据配置文件生成相应的Java类和XML文件。 4. **生成的...

    Java工程师笔试大全

    Java工程师笔试大全是针对Java开发人员的一系列面试和笔试题目集合,旨在测试候选人在Java编程、数据结构、算法、框架及软件工程等多个方面的理解和技能。这些题目通常涵盖以下几个核心领域: 1. **Java基础**:这...

    软件工程测试用例实验示例代码 Java学习资料

    7. **软件/插件**:在Java开发中,有时会使用到一些辅助工具或插件,如Eclipse或IntelliJ IDEA等集成开发环境(IDE)的内置测试支持,或是Maven或Gradle等构建工具来管理和运行测试用例。 通过这个"se-master...

    Java工程师面试宝典

    - **构建工具与多模块划分**:Maven 或 Gradle 等。 - **图片上传注意事项**:文件大小限制、格式验证等。 - **商品规格设计**:考虑商品属性、价格等信息的组织方式。 - **跨系统调用实现**:RESTful API、RPC 等。...

    阿里巴巴Java开发手册(正式版)

    - 构建工具:合理使用Maven或Gradle进行项目构建,保持POM或build.gradle文件的整洁。 - 版本控制:遵循Git工作流,合理使用分支、合并、提交和回滚操作。 - 持续集成:配置持续集成服务器,如Jenkins,自动化...

    《Java开发手册(嵩山版)》.pdf

    工程结构规约则关注项目的组织结构,如包的划分、模块的解耦、代码的模块化,以及如何有效地使用Maven或Gradle构建工具,以保证项目的可维护性和可扩展性。 设计规约涉及软件设计原则,如YAGNI(你不会需要它)、...

    oracle 结合 mybatis-plus 逆向工程生成代码,以便大家使用

    4. **执行逆向工程**: 使用 Maven 或 Gradle 插件运行逆向工程任务。命令行输入相应的指令,如 Maven 的 `mvn mybatis-plus:generate`,系统会根据配置生成相应的代码文件。 5. **检查生成的代码**: 生成的代码通常...

    阿里巴巴Java开发手册(嵩山版-2020.8).rar

    比如,提倡使用参数绑定而非字符串拼接来构造SQL,避免全表扫描,合理设计数据库表结构和索引,以及正确使用事务隔离级别等。 六、工程规约 工程规约关注项目结构、依赖管理、持续集成等方面。手册推荐使用Maven或...

    ooxml-java.zip_ooxml java

    这个“ooxml-java.zip_ooxml java”压缩包似乎包含了一个Java工程,目的是帮助开发者通过编程方式修改OOXML文档的内容。 在Java中处理OOXML文档,通常我们会使用Apache POI库。Apache POI是一个流行的开源项目,...

    microservice_coffeeshop:使用SpringBoot,SpringCloud-Eureka,JPA等微服务架构的示例。您可以使用gradle构建docker映像

    微服务_咖啡店简介这是一...使用的工程构造工具:Gradle,Gradlew插件存储服务:MySQL——InnoDB涉及到的框架有:SpringMVC,SpringBoot,SpringCloud-Netflix,Hibernate,RxJava(网关工程中)服务间通信:Restful AP

    java面试题(考试可能会考到).rar

    - Maven或Gradle构建工具的使用。 - 版本控制系统如Git的使用。 以上只是部分关键知识点,实际面试可能会涉及到更多细节和技术深度。对于初学者来说,全面学习和理解这些内容,将有助于在面试中表现出色,从而...

    阿里Java开发手册(泰山版)压缩包

    - 构造函数:提倡简洁的构造函数,避免过多参数,必要时使用Builder模式。 - 接口设计:接口应简洁明了,避免接口过度设计,每个接口应有且只有一个主要职责。 4. **工程规约**: - 项目结构:推荐Maven或者...

    传智播客2015年JAVA基础班视频教程(全套)

    此外,教程可能还会涉及基本的软件工程实践,如版本控制工具Git的使用,以及项目构建工具Maven或Gradle的介绍,帮助学习者建立良好的开发习惯。 总的来说,"传智播客2015年JAVA基础班视频教程(全套)"是一套全面且...

    模拟hibernate根据表生成Java bean文件

    Hibernate是一个流行的开源Java ORM框架,它允许开发者使用面向对象的方式来操作关系型数据库。通过提供对象-关系映射机制,Hibernate消除了数据库API的直接使用,使得代码更易于理解和维护。 2. **Java Bean**: ...

    Java项目开发全程实录-源代码

    这个压缩包很可能是为了帮助初学者和有经验的开发者理解如何将Java技术应用于实际软件工程。让我们深入探讨其中可能包含的知识点: 1. **基础Java语法**:作为Java项目开发的起点,理解和掌握Java的基本语法是至关...

    java发送HTML模版邮件

    本项目提供了一个完整的Eclipse工程,包含必要的jar包,可以直接导入并运行,使得开发者能够快速地掌握如何在Java中实现这一功能。 首先,要发送HTML模板邮件,你需要了解JavaMail API。JavaMail是Java平台上的一个...

    Java 7 Pocket Guide 2nd Edition

    第二部分“平台”包含第9章到第17章,着重介绍了Java平台的组件及相关主题,这帮助读者理解Java平台的内部构造和工作机制。最后,附录部分涵盖了第三方工具以及统一建模语言(UML)。 在Java编程语言方面,本书首先...

    mybatis逆向工程生成

    1. **安装与配置**:首先,我们需要在项目中引入MyBatis逆向工程的依赖,这通常通过Maven或Gradle的依赖管理实现。然后,配置generatorConfig.xml文件,这是逆向工程的核心,用于指定数据库连接信息、目标生成目录、...

Global site tag (gtag.js) - Google Analytics