2012-07-05 56 views
1

我必須在Ubuntu上管理多個Grails版本,即1.3.9和2.0.4。我已經從PPA安裝了Grails,它允許安裝多個版本,但只在bin下創建一個指向最新版本的條目。Ubuntu上的多個Grails版本

在Grails版本之間切換的最簡單方法是什麼?請注意,我是Grails的新手,我更喜歡不依賴於特定IDE的解決方案。

回答

3

我使用了一個腳本來解析application.properties文件,以確定某個特定應用需要哪個版本的Grails,然後調用它。我在我的bin目錄中將此腳本安裝爲「grails」。這樣我就可以運行grails whatever並自動使用正確版本的Grails。

我使用的腳本是我自己破解的腳本,但也有類似(更好設計)的解決方案,如https://github.com/deluan/grails.sh可供下載。

1

最簡單的方法是指定要使用的grails安裝的完整路徑,而不是僅依賴於grails run-app。這樣你就可以控制哪個版本的「grails」正在執行。

我確定還有其他更高級的方法可以做到,但只需指定grails可執行文件的位置是最簡單的。

也就是說,從IDE內部工作可能會使這變得更容易或更困難,但您如何這樣做將取決於具體的IDE。

+1

您還需要指定特定的安裝grails.work.dir(-Dgrails.work.dir = THE_PATH) - 雖然在第二個想法,你可能沒有,如果你是使用該運行時的默認值......請記住這一點。 – cjstehno 2012-07-05 17:24:13

2

我寫了一個簡單的腳本,並不像Ian Roberts answer那樣精細,但是這對我很有用。我猜想Grails版本安裝在/opt文件夾下,您還需要將此文件名爲grails添加到PATH

#!/bin/bash 

GRAILS_VERSION=`grep app.grails.version application.properties | cut -d'=' -f2` 
GRAILS_HOME="/opt/grails-$GRAILS_VERSION" 

export GRAILS_HOME 
$GRAILS_HOME/bin/grails $* 

有關於這個主題的堆棧溢出更多的問題:

2

http://gvmtool.net/最好的工具不僅對Grails的,它的工作原理與常規,獅鷲,gradle這個,vertx等

0

我創建a bash scriptgrails.sh)放置在項目中確定的Grails版本,並使用相同版本的編譯/測試/運行該項目。

#!/bin/bash 

GRAILS_DIRECTORY="/usr/local" 
GRAILS_VERSION=`grep app.grails.version application.properties | cut -d'=' -f2` 
GRAILS_HOME="$GRAILS_DIRECTORY/grails-$GRAILS_VERSION" 
export GRAILS_HOME 

$GRAILS_HOME/bin/grails compile 
$GRAILS_HOME/bin/grails test-app 
$GRAILS_HOME/bin/grails -Dserver.port=8443 run-app 

要我用我的Ubuntu機器上7個Grails的版本執行bash腳本

$ bash grails.sh 
1

。將下面的代碼放在.bashrc文件的底部。

function switchGrails() { 

回聲「切換到Grails的版本:$ 1「

須藤RM /選擇/ Grails的

須藤LN -s /選擇/ $ 1 /選擇/ Grails的

回聲「完成了! 」

}

別名grails225 ='switchGrails「的grails-2.2.5「」

別名grails224 ='switchGrails「的grails-2.2.4「 '

別名grails223 =' switchGrails「的grails-2.2.3」 '

別名grails233 =' switchGrails「的grails-2.3.3「 '

別名grails235 =' switchGrails「的grails-2.3.5「 '

別名grails237 =' switchGrails「的grails-2.3.7」」

別名聖盃s2311 ='switchGrails「grails-2.3.11」'

保存並退出後。編譯.bashrc文件。鍵入cd和。 .bashrc來編譯.bashrc文件。

更多參考:https://pkashyap28.wordpress.com/2014/09/11/manage-multiple-grails-application-in-ubuntu/