日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

gradle java ide_使用Gradle构建Java项目

發布時間:2025/3/11 java 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 gradle java ide_使用Gradle构建Java项目 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

使用Gradle構建Java項目

這個手冊將通過一個簡單的Java項目向大家介紹如何使用Gradle構建Java項目。

我們將要做什么?

我們將在這篇文檔航中創建一個簡單的Java項目,然后使用Gradle構建它。

需要準備什么?

預留15分鐘空閑時間

一件稱手的兵器(你最喜歡的IDE或者文本編輯器)

Java環境([JDK6](http://www.oracle.com/technetwork/java/javase/downloads/index.html”JDK”及以上版本)

如何完成這個手冊的內容?

與大多數Spring的入門手冊一樣,你可以從頭開始一步步完成教程中的每一步工作,也可以跳過你已經爛熟的基礎步驟。不管采用那種方式,你最后都會得到可工作的代碼。

如果要重頭開始,猛戳這里

如果要跳過基礎部分,需執行以下操作:

下載并解壓本文檔相關源代碼,或者使用Git克隆一個:git clone https://github.com/spring-guides/gs-gradle.git

cd 進入?gs-gradle/initial

當你完成后,你可以使用gs-gradle/complete來檢查你的結果。

配置項目

首先需要配置一個項目給Gradle進行構建。為了保證我們能專注于Gradle,目前最好創建最簡單的Java項目。

創建目錄結構

在項目主目錄下,創建以下子目錄;在*nix系統下可以使用命令:mkdir -p src/main/java/hello

在src/main/java/hello目錄中,你可以創建任何Java類。為簡單起見并且為了與指南的其余部分保持一致,我們建議創建兩個雷HelloWorld.java和Greeter.java

src/main/java/hello/HelloWorld.java的源代碼:

src/main/java/hello/Greeter.java的源代碼:

安裝Gradle

到目前為止,我們已經搭建了一個可以用來使用Gradle構建的項目,現在到了安裝Gradle的時候了。

Gradle可以從http://www.gradle.org/downloads下載。我們僅需要下載Gradle的二進制發布包,所以在剛才提供的連接上尋找gradle-version-bin.zip文件(當然,也可以下載gradle-version-all.zip,它包含源代碼、文檔以已編譯代碼)

解壓縮下載的文件,并將解壓后目錄中的bin目錄加到環境變量中。

可以在命令行中執行以下代碼來測試Gradle是否安裝成功

如果你很幸運,嘛事都OK,你會看到下面的welcome信息:

看到這個了,說明Gradle已經成功安裝到系統中了。如果沒看到……再去看看Gradle的手冊先。

Gradle可以做些什么呢?

Gradle已經安裝到系統上了,那么它可以做什么呢?在我們為項目創建build.gradle文件之前,我們可以先問一下Gradle目前有哪些可用的任務(Tasks):

我們可以看到可用任務(Tasks)的列表。假設你執行Gradle的目錄不存在build.gradle文件,你可以看到一些非常基礎的任務,類似于:

盡管上面的列出的任務是可用的,但是如果沒有項目的構建配置他們無法提供太多的價值。當配置了項目的build.gradle后,一些任務將變得非常有用。

如果在build.gradle中配置了插件(plugins)上面的任務列表會變得更長,最好在配置插件后使用gradle task看看那些任務是可用的。

剛說到配置插件,馬上我們就會配置一個插件來啟用基礎的Java構建功能。

構建Java代碼

先從簡單的開始,創建一個最簡單的只有一行的build.gradle文件:

別看只有一行配置,提供的能力可不是一點點哦。再執行一下gradle task,我們可以看到任務列表中增加了一些內容,比如:用來編譯java項目的任務、用來創建JavaDoc的任務、用來執行單元測試的任務。

我們經常使用的任務是gradle build,這個任務執行以下操作:編譯、執行單元測試、組裝Jar文件:

幾秒鐘以后,會看到”BUILD SUCCESSFUL”輸出,說明構建已經完成了。

可以到”build”目錄中查看構建結構,在這個目錄中我們可以看到很多子目錄,其中有三個我們需要特別注意:

classes: 保存被編譯后的.class文件

reports: 構建報告(如:測試報告)

lib: 組裝好的項目包(通常為:.jar或者.war文件)

classes目錄包含編譯生成的所有.class文件。執行完編譯后,我們應該可以在這里找到”HelloWorld.class”和”Greeter.class”。

到目前為止,我們項目并沒有申明任何依賴,所以”debendency_cache”目錄是空的。

“reports”目錄會包含項目單元測試的測試報告,當然,當前項目并未編寫任何單元測試,所以,也是空目錄。

“lib”目錄包含打包后的jar或war文件,在后面的內容中我們將學會如何定義JAR的名稱和版本號。

申明依賴

我們的Hello World例程非常簡單且不依賴于任何第三方庫,但是大多數應用程序都會依賴第三方庫提供的通用或復雜的功能。

例如:假設我們希望更好的說”Hello World!”,我們希望應用程序能同時輸出當前的日期和時間。當然這可以使用Java自身的日期和時間相關庫,但是我們可以使用”Joda Time”庫實現更有趣的功能。

首先,把HelloWorld.jara類修改成下面這樣:

這里我們的HelloWorld使用”Joda Time”的LocalTime類來獲取和輸出當前時間。

如果我們馬上執行gradle build來構建項目,構建過程將會失敗,因為我們并未將”Joda Time”庫聲明為編譯時依賴庫。

首先,我們需要添加一些配置來定義第三方庫的來源:

上面的repositories定義,告訴構建系統通過Maven中央庫來檢索項目依賴的軟件包,Gradle在很大程度上依賴Maven構建工具的許多約定和基礎功能,包括使用Maven中央的庫來處理依賴關系。

現在我們可以使用第三方庫了,但現需要定義:

使用dependencies塊,我們定義了一條Joda Time的依賴項。這里,明確指定使用joda-time組內的版本為2.2的joda-time庫。

另一個要注意的是,我們在這個依賴定義中指定依賴是compile范圍的。意思是,這個庫在編譯和運行時都需要(如果我們正在構建WAR文件,這個文件會在/WEB-INF/libs目錄下)。另外值得注意的依賴類型包括:

providedCompile:在編譯期間需要這個依賴包,但在運行期間可能由容器提供相關組件(比如:Java Servlet API)

testCompile:依賴項僅在構建和運行測試代碼時需要,在項目運行時不需要這個依賴項。

最后,我們來定義我們將生成的Jar文件的名字:

jar塊定義如何命名JAR文件,在上面的例子中,我們的JAR文件的名字為:gs-gradle-0.1.0.jar。

注:這個時候如果執行gradle build,Gradle會花一些時間從Maven中央庫下載Joda Time包(具體下載時間依賴于你的網速)

使用Gradle Wrapper來構建項目

Gradle Wrapper是開始一個Gradle構建的首選方式。它包含了windows批處理以及OS X和Linux的Shell腳本。這些腳本允許我們在沒有安裝Gradle的系統上執行Gradle構建。要實現這個功能,我們需要在我們的build.gradle文件中增加以下代碼:

執行下面代碼來下載和初始化wrapper腳本:

命令執行完后,我們可以看到增加了一些新文件。有兩個文件在根目錄下,wapper的jar文件和properties文件在新增的gradle/wrapper目錄下。

現在Gradle Wrapper已經可以用來構建系統了。把這些文件增加到版本控制系統中,然后再任何時候、任何地方只要遷出這些文件就一個按照同樣的方式(與當前生成 Wrapper的Gradle版本一致)構建系統。運行wrapper腳本來構建系統,跟我們之前橋的命令很像:

當第一次通過wrapper使用指定版本的Gradle構建系統時,wrapper首先下載對應版本的Gradle可執行文件。Gradle Wrapper的所有文件在都可以被提交到版本庫中,所以,任何人都可以在沒有安裝Gradle的環境下使用相同版本的Gradle構建系統。

在這個時候,我們需要重新構建我們的代碼,構建的結果目錄如下:

Jar文件中包含我們希望打包的Gretter和HelloWorld類。

需要注意的,即使我們聲明了joda-time依賴,但這里也沒有包括對應的庫文件,而且生成的JAR文件也不是可運行JAR文件。

要想讓代碼可以運行,我們可以使用Gradle的application插件。增加以下內容到build.gradle文件中。

現在我們的app可以執行了。

為了能夠將依賴包也以一起打包,比如,我們希望構建一個WAR包,可以包含第三方組件的打包格式,我們可以使用Gradle的WAR插件。如果我們使用Spring Boot并且希望得到一個可執行的JAR文件,我們可以使用spring-boot-gradle-plugin插件。在我們的示例中,gradle沒有足夠的信息來了解我們的目標系統。但是,目前介紹的內容已經足夠我們開始使用Gradle了。

下面是本文需要用的的build.gradle文件:

總結

以上是生活随笔為你收集整理的gradle java ide_使用Gradle构建Java项目的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 人成午夜| 欧美日韩黄色一区二区 | 欧美日韩第一区 | 美女视频黄色在线观看 | 一区二区三区丝袜 | 中文字幕在线观看视频www | 午夜国产一级 | 中文在线字幕 | av久操 | 日本一区二区三区在线视频 | 亚洲国产精品久久久久久6q | 天天天天射 | 亚洲视频观看 | 在线va视频| 久久精品黄色片 | 奇米婷婷| 亚洲国产精品成人久久蜜臀 | 日本久操 | 中文字幕一区日韩 | 久久在线看 | 午夜嘿嘿 | 国产精品久久久久久久一区二区 | 狠狠撸狠狠干 | 理论av| 日本亚洲综合 | 亚洲国产成人一区 | 精品一区二区三区无码视频 | 欧美成人免费观看视频 | 国产女教师一区二区三区 | 一区二区有码 | 国产男女猛烈无遮挡免费视频 | 高清一区二区三区四区五区 | 中国黄色录像一级片 | 精品国产一区二区三区久久久蜜月 | 影音先锋成人 | 久久亚洲国产成人精品性色 | 美女黄视频在线观看 | 在线成人毛片 | 水蜜桃色314在线观看 | 可以在线观看的黄色 | 深夜视频一区二区 | 欧产日产国产精品 | 中文字幕日产乱码中 | 人妻在线日韩免费视频 | 青草一区二区 | 成人精品水蜜桃 | 亚洲欧美国产高清va在线播放 | 亚洲熟妇无码av | 97视频在线观看免费高清完整版在线观看 | jjzz在线| 黄色动漫免费在线观看 | 亚洲精品视频免费观看 | 久久99久久99精品免观看粉嫩 | 超碰在线最新地址 | 九九九国产视频 | 性做久久| 免费看国产一级片 | 三级黄色网络 | 成人做爰69片免费看 | 人与嘼交av免费 | 午夜18视频在线观看 | 好妞色妞国产在线视频 | xxxx69国产| 综合成人 | 成人免费看高清电影在线观看 | 福利精品在线 | 亚洲第一页av | av免费看网址 | 老女人性视频 | 伊人免费视频二 | japanese国产在线观看 | 超碰在线最新地址 | 麻豆一区产品精品蜜桃的特点 | 亚洲激情午夜 | 波多野结衣一区二区三区 | 欧美在线不卡视频 | 亚洲精品码 | 91九色国产视频 | 男人av在线 | 午夜性刺激免费视频 | 老司机在线看片 | 91视频免费网址 | 国产丰满农村老妇女乱 | 毛片在线网站 | 黄污视频在线观看 | 欧美巨乳在线观看 | 四虎国产精品永久免费观看视频 | 人人爽爽爽 | 国产日本亚洲 | 精品国产一区二区三区四 | 蜜桃精品视频在线 | 米奇7777狠狠狠狠视频 | 欧美一a| 一个色综合网站 | 欧美理论视频 | 91看片黄 | 国产日韩欧美专区 | 伊人网免费视频 | 毛片中文字幕 |