差異處
這裏顯示兩個版本的差異處。
下次修改 | 前次修改 | ||
java:gradle:packziphelloworld [2019/10/20 12:03] tony 建立 |
java:gradle:packziphelloworld [2019/10/20 12:28] tony |
||
---|---|---|---|
行 1: | 行 1: | ||
{{tag>gradle}} | {{tag>gradle}} | ||
- | ====== Pack Zip Hello World ====== | + | ====== Gradle - Pack Zip Hello World ====== |
===== Introduction ===== | ===== Introduction ===== | ||
因為公司人數越來越多,開始有人和我們搶會議室;為了節省我們時間,我開發了一個自動訂會議室的工具。以往我都是透過ant去包裝軟體,這次嘗試用gradle去包裝這個小工具。\\ | 因為公司人數越來越多,開始有人和我們搶會議室;為了節省我們時間,我開發了一個自動訂會議室的工具。以往我都是透過ant去包裝軟體,這次嘗試用gradle去包裝這個小工具。\\ | ||
- | 我的專案結構如下:\\ | + | 我的專案結構如下,這是使用Eclipse建出來的Gradle專案:\\ |
{{:java:gradle:gradle_autobookingtool_project_struct.png|}}\\ | {{:java:gradle:gradle_autobookingtool_project_struct.png|}}\\ | ||
\\ | \\ | ||
行 12: | 行 12: | ||
- 將編譯出來的東西包為jar並連同相依項目放到libs中。 | - 將編譯出來的東西包為jar並連同相依項目放到libs中。 | ||
===== How to? ===== | ===== How to? ===== | ||
+ | 我的gradle設定給大家參考: | ||
<code bash> | <code bash> | ||
apply plugin: 'java-library' | apply plugin: 'java-library' | ||
行 28: | 行 29: | ||
| | ||
compile 'log4j:log4j:1.2.17' | compile 'log4j:log4j:1.2.17' | ||
+ | runtime 'org.slf4j:slf4j-log4j12:1.6.6' | ||
compile 'org.slf4j:slf4j-api:1.7+' | compile 'org.slf4j:slf4j-api:1.7+' | ||
行 45: | 行 47: | ||
from 'scripts' | from 'scripts' | ||
} | } | ||
- | info('webdrivers') { | + | into('webdrivers') { |
from 'webdrivers' | from 'webdrivers' | ||
} | } | ||
行 51: | 行 53: | ||
</code> | </code> | ||
+ | 因為Eclipse建出來的專案已經把Gradle相關的東西都放在專案目錄下,所以你可以直接切到專案目錄下執行以下指令: | ||
+ | <code bash> | ||
+ | gradlew buildZip | ||
+ | </code> | ||
+ | 建置結果如下:\\ | ||
+ | {{:java:gradle:gradle_autobookingtool_pack_result.png|}} | ||
===== Reference ===== | ===== Reference ===== | ||
* [[https://stackoverflow.com/questions/34814517/how-to-pack-files-inside-zip-dependency-in-gradle|How to pack files inside zip dependency in Gradle?]] | * [[https://stackoverflow.com/questions/34814517/how-to-pack-files-inside-zip-dependency-in-gradle|How to pack files inside zip dependency in Gradle?]] |