怎么说呢,最近几天不太想更专栏。。。不过这个是我和朋友组队参加TeaCon后分享给他们的一篇自己写的,就发一下吧(Markdown写的,源码附后)
写 Java 项目,怎么构建?
谈到Java构建,提到最多的就是Ant、Maven和Gradle
简单谈一下三者的优劣:Ant在IntelliJ IDEA中并没有发挥出很大的作用,比较适用于小型项目或是学习过程中的项目,Ant的配置文件是build.xml。
Maven是一款优秀的,也是很方便的构建工具,它的配置文件是pom.xml,添加依赖很方便,适用于各种项目开发。
Gradle是一款自动化的构建工具,它的配置文件是build.gradle,不得不说的是Gradle用的多因为它的配置文件方便,使用Groovy编写,很轻量级。
如果使用IntelliJ IDEA作为IDE,我推荐的学习时构建工具是Ant,它能够很快地帮你入门;如果你要做中小型项目,我推荐Maven或Gradle,我更倾向于Gradle一些,因为它的配置文件编写更靠近于Java;如果你要做大型项目,并且依赖项比较多的话,我推荐Gradle,但是用Maven也可以,只不过配置编写我认为可能不太方便。
Java的构建工具是你创建项目时需要优先考虑的一个重要内容,因为如果构建工具没有选对,可能你的项目就需要重新制作。
再来谈一下三者的速度对比(条件:除JDK外无任何依赖项):Ant:最少1秒,如果代码量大可能10秒到几分钟
Maven:基本同Ant
Gradle:初次配置最少3秒,后面的最少0.5秒,如果代码量大可能10秒到几分钟
如果有本地的依赖项:Ant:不一定
Maven:2秒起步
Gradle:初次配置3秒,后面的1秒起步
如果有需要从网络下载的依赖项(假设网络状态良好):Ant:做白日梦
Maven:10秒起步
Gradle:7秒起步
可以看到,Ant的优势在于依赖不多的时候,也就是小程序,Maven算是中等水平,Gradle的优势在于多任务处理。
当然了,如果你做Minecraft模组开发,你除了Gradle毫无选择,因为这需要在网上下载大量资源。
如何使用Gradle?
先来介绍一下gradle.properties文件,这是资源包文件,当你创建/打开一个Gradle项目时你很容易看到这个文件,在根目录下有一个gradle.properties在里面可能有一个org.gradle.jvmargs,这个是需要特别注意的,里面有一个-Xmx选项,这个后面会跟一个字节数(例如1G、512m),这指的是你的Java最大内存分配,这个建议不超过1G,按照自己的来,否则会报错。
然后是在构建的时候可能会报错Gradle的版本不对(一般出在打开其他人的项目),这个可以把它调成一个你有把握的版本(我建议的:4.8.1版和最新版),位置在/gradle/wrapper/gradle-wrapper.properties的distributionUrl参数。
然后说build.gradle,第一眼看上去会一脸懵逼,那么这个时候百度翻译的作用就凸显出来了网上有很多关于Gradle的教程,可以自行搜索。
Markdown源码 · 需要自行复制
天。。。B站代码块没有Markdown语法,我就随便选个吧(外链已删除)