我必須在Ubuntu上管理多個Grails版本,即1.3.9和2.0.4。我已經從PPA安裝了Grails,它允許安裝多個版本,但只在bin下創建一個指向最新版本的條目。Ubuntu上的多個Grails版本
在Grails版本之間切換的最簡單方法是什麼?請注意,我是Grails的新手,我更喜歡不依賴於特定IDE的解決方案。
我必須在Ubuntu上管理多個Grails版本,即1.3.9和2.0.4。我已經從PPA安裝了Grails,它允許安裝多個版本,但只在bin下創建一個指向最新版本的條目。Ubuntu上的多個Grails版本
在Grails版本之間切換的最簡單方法是什麼?請注意,我是Grails的新手,我更喜歡不依賴於特定IDE的解決方案。
我使用了一個腳本來解析application.properties
文件,以確定某個特定應用需要哪個版本的Grails,然後調用它。我在我的bin
目錄中將此腳本安裝爲「grails」。這樣我就可以運行grails whatever
並自動使用正確版本的Grails。
我使用的腳本是我自己破解的腳本,但也有類似(更好設計)的解決方案,如https://github.com/deluan/grails.sh可供下載。
最簡單的方法是指定要使用的grails安裝的完整路徑,而不是僅依賴於grails run-app
。這樣你就可以控制哪個版本的「grails」正在執行。
我確定還有其他更高級的方法可以做到,但只需指定grails可執行文件的位置是最簡單的。
也就是說,從IDE內部工作可能會使這變得更容易或更困難,但您如何這樣做將取決於具體的IDE。
我寫了一個簡單的腳本,並不像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 $*
有關於這個主題的堆棧溢出更多的問題:
我做這個....
http://www.objectpartners.com/2010/10/12/update-fast-path-switching-between-projects/
Groovy環境管理器10。 http://gvmtool.net/最好的工具不僅對Grails的,它的工作原理與常規,獅鷲,gradle這個,vertx等
我創建a bash script(grails.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
。將下面的代碼放在.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/
您還需要指定特定的安裝grails.work.dir(-Dgrails.work.dir = THE_PATH) - 雖然在第二個想法,你可能沒有,如果你是使用該運行時的默認值......請記住這一點。 – cjstehno 2012-07-05 17:24:13