参考:Building Java Projects with Gradle https://spring.io/guides/gs/gradle/
用gradle编译java项目
1、项目准备
1.1创建项目目录,或者选择一个目录作为<项目目录>
1.2 <项目目录>创建src/main/java/hello/
mkdir -p src/main/java/hello/
1.3 在上一步的hello目录新建两个类HelloWorld和Greeter
src/main/java/hello/HelloWorld.java
package hello; public class HelloWorld { public static void main(String[] args) { Greeter greeter = new Greeter(); System.out.println(greeter.sayHello()); } }
src/main/java/hello/Greeter.java
package hello; public class Greeter { public String sayHello() { return "Hello world!"; } }
2、gradle初始化
gradle
(你得先安装好gradle,并添加bin文件夹到执行路径)
执行之后,目录中会生成一个 .gradle 目录。
查看可选功能
gradle tasks
会列出所有选项
新建配置文件gradle.build,文件里面只需要写下面一句语句
apply plugin: 'java'
这时重新执行一遍,gradle tasks命令会多出许多选项
3、编译JAVA项目
gradle build
过了一会,会出现“build successful”的字样,并且生成一个build文件夹。你在里面可以发现以下几个文件夹。
-
classes. 项目编译的.class 文件.
-
libs. 项目库 (一般是JAR 、 WAR 文件).
4、添加依赖
改变src/main/java/hello/HelloWorld.java的代码如下:
package hello; import org.joda.time.LocalTime; public class HelloWorld { public static void main(String[] args) { LocalTime currentTime = new LocalTime(); System.out.println("The current local time is: " + currentTime); Greeter greeter = new Greeter(); System.out.println(greeter.sayHello()); } }
现在我们添加了对一个joda.time库的依赖,直接在此运行gradle build会报错的,所以我们要去修改build.gradle文件。
apply plugin: 'java' // 添加第三方依赖仓库, repositories { mavenCentral() }// 为我们的jar包命令 jar { baseName = 'gs-gradle' version = '0.1.0' }// tag::dependencies[] 声明依赖的库包 sourceCompatibility = 1.8 targetCompatibility = 1.8 dependencies { compile "joda-time:joda-time:2.2" testCompile "junit:junit:4.12" } // end::dependencies[] // tag::wrapper[] // end::wrapper[]
接下来就可以成功重新编译项目了。
5、用gradle wrapper编译项目
gradle wrapper是编译项目的首选方式,执行以下语句
gradle wrapper
将生成两个文件、一个目录。
└── <project folder> └── gradlew └── gradlew.bat └── gradle └── wrapper └── gradle-wrapper.jar └── gradle-wrapper.properties
接下来可以使用gradlew编译项目。
$ gradle wrapper --gradle-version 2.13
build文件夹将变化。
build ├── classes │ └── main │ └── hello │ ├── Greeter.class │ └── HelloWorld.class ├── dependency-cache ├── libs │ └── gs-gradle-0.1.0.jar └── tmp └── jar └── MANIFEST.MF
要使项目文件可以运行,我们要添加以下属性到配置文件。
apply plugin: 'application' mainClassName = 'hello.HelloWorld'
接下来就可以运行了
$ gradlew run
得