Skip to content

Commit 3618902

Browse files
committed
add gvm installation
1 parent fb8cf5b commit 3618902

6 files changed

Lines changed: 193 additions & 8 deletions

File tree

.Makefile.swp

12 KB
Binary file not shown.

Makefile

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1-
topdf:
2-
pandoc --template=default.latex --latex-engine=xelatex -V fontsize=13pt README.md -o README.pdf
3-
pandoc -t bbcode.lua README.md -o README.bbcode
4-
pandoc -t ithelp.lua README.md -o README.ithelp
1+
all:
2+
for file in README ; do \
3+
pandoc --template=default.latex --latex-engine=xelatex -V fontsize=13pt $$file.md -o $$file.pdf ; \
4+
pandoc -t bbcode.lua $$file.md -o $$file.bbcode ; \
5+
pandoc -t ithelp.lua $$file.md -o $$file.ithelp ; \
6+
done
57
# pandoc --template=default.latex --latex-engine=xelatex -V fontsize=13pt 01-installation.txt -o 01-installation.pdf
68
#zip -r ../ireport.zip part1* part2* part3* author*

README.pdf

106 KB
Binary file not shown.

gvm-00-install.ithelp

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
[size=20px][color=blue][font=Sans Serif]GVM - Groovy 的版本管理工具[/font][/color][/size]
2+
3+
開發工具的安裝與版本切換,也需要一個好用的工具來控管。就像 RVM(Ruby Version Manager)及 NVM(Node Version Manager)等,Groovy 及 Grails 也有相同概念的管理工具 GVM(Groovy enVironment Manager),簡化安裝、升級與版本切換的操作流程。
4+
5+
GVM 不僅可用於 Groovy 的安裝,也支援以下的軟體(可選擇的軟體項目稱為 Candidate):
6+
7+
* Groovy
8+
* Grails
9+
* Griffon
10+
* Gradle
11+
* Groovyserv
12+
* Lazybones
13+
* vert.x
14+
15+
目前 GVM 在 Linux 及 Mac OS X 可以良好運作,若是用於 Windows 開發環境,則必須另外搭配 Cygwin 使用(為了模擬 Bash Shell 環境)。
16+
17+
[size=20px][color=blue][font=Sans Serif]必須先安裝 JDK[/font][/color][/size]
18+
19+
很不幸的是,Java 的 JDK 並沒有如此便利的安裝工具,但是 GVM 及 Groovy 等又是建立在 Java VM 的基礎上,所以事先安裝 JDK 並且正確設定 JAVA_HOME 環境變數,是使用 GVM 之前就必須先做好;幸好在 Linux 及 Mac OS X 很容易就能把 JDK 搞定。
20+
21+
[size=20px][color=blue][font=Sans Serif]GVM 安裝[/font][/color][/size]
22+
23+
只要一行 command line 就能搞定 GVM 的安裝。
24+
25+
[code]
26+
curl -s get.gvmtool.net | bash
27+
[/code]
28+
29+
請注意並不需要使用 [u]sudo[/u] 來切換系統權限,因為 GVM 允許每位登入者具備自己的獨立環境(其相關檔案保存在 ~/.gvm 路徑底下)。
30+
31+
[size=20px][color=blue][font=Sans Serif]開始使用 GVM[/font][/color][/size]
32+
33+
使用 [u]gvm list groovy[/u] 可以查詢 Groovy 工具可供安裝的版本。在版本代號前顯示 [u]> *[/u] 符號表示已安裝且預設使用的版本。
34+
35+
[code]
36+
============================================================
37+
Available Groovy Versions
38+
============================================================
39+
2.2.0-beta-2
40+
2.2.0-beta-1
41+
2.1.7
42+
> * 2.1.6
43+
2.1.5
44+
[/code]
45+
46+
若要安裝 Groovy 最新版本(目前是 2.1.7),只需要利用 [u]install[/u] 指令並指定 Candidate 與版本代碼。
47+
48+
[code]
49+
gvm install groovy 2.1.7
50+
[/code]
51+
52+
將目前 Bash Shell 使用的 Groovy 切換為指定版本,使用 [u]use[/u] 指令。
53+
54+
[code]
55+
groovy use groovy 2.1.7
56+
[/code]
57+
58+
若之後要固定使用某個版本,只要利用 [u]default[/u] 指令。
59+
60+
[code]
61+
groovy default groovy 2.1.7
62+
[/code]
63+
64+
Groovy 及 Grails 工具的版本更新頻繁,採用 GVM 工具簡化安裝與升級,將安裝流程變成只要一行指令,就能取代本來要耗費人工的事:
65+
66+
* 下載並解壓縮
67+
* 設定環境變數(如 PATH 等)
68+
69+
更重要的是它能讓多個版本共存,並且隨時輕鬆切換。開發者自己也能利用 [u].bashrc[/u] 搭配 [u]link[/u] 做到類似效果,但使用 GVM 連處理這些設定的時間都能省下。
70+
71+
如果不想使用 GVM,Linux 與 Mac OS X 也有其他工具可以管理安裝。
72+
73+
Ubuntu Linux
74+
75+
* APT 的 [u]apt-get[/u]
76+
77+
Mac OS X
78+
79+
* MacPorts 的 [u]port[/u]
80+
* Homebrew 的 [u]brew[/u]
81+
82+
但是在近期的使用經驗中,這些工具對 Groovy 相關 Java 工具軟體的更新速度,通常無法跟隨官方更新的腳步,所以來自 Groovy 開發社群的 GVM 仍是比較好的選擇。
83+
84+
在本次主題的相關文章中,如有用到 Groovy、Gradle、Grails 等工具,都可以使用 GVM 將需要的環境快速建立。
85+
86+
* gvm install groovy
87+
* gvm install gradle
88+
* gvm install grails

gvm-00-install.md

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
GVM - Groovy 的版本管理工具
2+
===========================
3+
4+
開發工具的安裝與版本切換,也需要一個好用的工具來控管。就像 RVM(Ruby Version Manager)及 NVM(Node Version Manager)等,Groovy 及 Grails 也有相同概念的管理工具 GVM(Groovy enVironment Manager),簡化安裝、升級與版本切換的操作流程。
5+
6+
GVM 不僅可用於 Groovy 的安裝,也支援以下的軟體(可選擇的軟體項目稱為 Candidate):
7+
8+
* Groovy
9+
* Grails
10+
* Griffon
11+
* Gradle
12+
* Groovyserv
13+
* Lazybones
14+
* vert.x
15+
16+
目前 GVM 在 Linux 及 Mac OS X 可以良好運作,若是用於 Windows 開發環境,則必須另外搭配 Cygwin 使用(為了模擬 Bash Shell 環境)。
17+
18+
### 必須先安裝 JDK ###
19+
20+
很不幸的是,Java 的 JDK 並沒有如此便利的安裝工具,但是 GVM 及 Groovy 等又是建立在 Java VM 的基礎上,所以事先安裝 JDK 並且正確設定 JAVA_HOME 環境變數,是使用 GVM 之前就必須先做好;幸好在 Linux 及 Mac OS X 很容易就能把 JDK 搞定。
21+
22+
### GVM 安裝 ###
23+
24+
只要一行 command line 就能搞定 GVM 的安裝。
25+
26+
```
27+
curl -s get.gvmtool.net | bash
28+
```
29+
30+
請注意並不需要使用 ``sudo`` 來切換系統權限,因為 GVM 允許每位登入者具備自己的獨立環境(其相關檔案保存在 ~/.gvm 路徑底下)。
31+
32+
### 開始使用 GVM ###
33+
34+
使用 ``gvm list groovy`` 可以查詢 Groovy 工具可供安裝的版本。在版本代號前顯示 `` > * `` 符號表示已安裝且預設使用的版本。
35+
36+
```
37+
============================================================
38+
Available Groovy Versions
39+
============================================================
40+
2.2.0-beta-2
41+
2.2.0-beta-1
42+
2.1.7
43+
> * 2.1.6
44+
2.1.5
45+
```
46+
47+
若要安裝 Groovy 最新版本(目前是 2.1.7),只需要利用 ``install`` 指令並指定 Candidate 與版本代碼。
48+
49+
```
50+
gvm install groovy 2.1.7
51+
```
52+
53+
將目前 Bash Shell 使用的 Groovy 切換為指定版本,使用 ``use`` 指令。
54+
55+
```
56+
groovy use groovy 2.1.7
57+
```
58+
59+
若之後要固定使用某個版本,只要利用 ``default`` 指令。
60+
61+
```
62+
groovy default groovy 2.1.7
63+
```
64+
65+
Groovy 及 Grails 工具的版本更新頻繁,採用 GVM 工具簡化安裝與升級,將安裝流程變成只要一行指令,就能取代本來要耗費人工的事:
66+
67+
1. 下載並解壓縮
68+
2. 設定環境變數(如 PATH 等)
69+
70+
更重要的是它能讓多個版本共存,並且隨時輕鬆切換。開發者自己也能利用 ``.bashrc`` 搭配 ``link`` 做到類似效果,但使用 GVM 連處理這些設定的時間都能省下。
71+
72+
如果不想使用 GVM,Linux 與 Mac OS X 也有其他工具可以管理安裝。
73+
74+
Ubuntu Linux
75+
76+
* APT 的 ``apt-get``
77+
78+
Mac OS X
79+
80+
* MacPorts 的 ``port``
81+
* Homebrew 的 ``brew``
82+
83+
但是在近期的使用經驗中,這些工具對 Groovy 相關 Java 工具軟體的更新速度,通常無法跟隨官方更新的腳步,所以來自 Groovy 開發社群的 GVM 仍是比較好的選擇。
84+
85+
在本次主題的相關文章中,如有用到 Groovy、Gradle、Grails 等工具,都可以使用 GVM 將需要的環境快速建立。
86+
87+
* gvm install groovy
88+
* gvm install gradle
89+
* gvm install grails
90+
91+
92+
93+
94+
95+
96+

ithelp.lua

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ end
111111

112112
-- lev is an integer, the header level.
113113
function Header(lev, s, attr)
114-
return "[h]" .. s .. "[/h]"
114+
return "[size=20px][color=blue][font=Sans Serif]" .. s .. "[/font][/color][/size]"
115115
end
116116

117117
function BlockQuote(s)
@@ -129,7 +129,6 @@ end
129129
function BulletList(items)
130130
local buffer = {}
131131
for _, item in ipairs(items) do
132-
-- table.insert(buffer, "[*]" .. item)
133132
table.insert(buffer, " * " .. item)
134133
end
135134
return table.concat(buffer, "\n")
@@ -138,9 +137,9 @@ end
138137
function OrderedList(items)
139138
local buffer = {}
140139
for _, item in ipairs(items) do
141-
table.insert(buffer, "[*]" .. item)
140+
table.insert(buffer, " * " .. item)
142141
end
143-
return "[list=1]\n" .. table.concat(buffer, "\n") .. "\n[/list]"
142+
return table.concat(buffer, "\n")
144143
end
145144

146145
-- Revisit association list STackValue instance.

0 commit comments

Comments
 (0)