Ubuntu上有多个Grails版本

时间:2012-07-05 16:21:05

标签: grails ubuntu groovy

我必须在Ubuntu上管理多个Grails版本,即1.3.9和2.0.4。我已经从PPA安装了Grails,它允许安装多个版本,但只在bin下创建一个条目,指向最新版本。

在Grails版本之间切换的最简单方法是什么?请注意,我是Grails的新手,我更喜欢不依赖于特定IDE的解决方案。

7 个答案:

答案 0 :(得分:3)

我使用一个解析application.properties文件的脚本来确定特定应用程序所需的Grails版本,然后调用它。我在我的bin目录中将此脚本安装为“grails”。这样我就可以运行grails whatever并自动使用正确版本的Grails。

我使用的脚本是我自己一起攻击的脚本,但有类似(和更好的工程)解决方案,如https://github.com/deluan/grails.sh可供下载。

答案 1 :(得分: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 $*

Stack Overflow中有关于此主题的更多问题:

答案 2 :(得分:2)

Groovy enVironment Manager。 http://gvmtool.net/最好的工具不仅适用于grails,它适用于groovy,griffon,gradle,vertx等。

答案 3 :(得分:1)

最简单的方法是指定要使用的grails安装的完整路径,而不是仅仅依赖grails run-app。这样你就可以控制正在执行哪些版本的“grails”。

我确信还有其他更高级的方法,但只是指定grails可执行文件的位置是最简单的。

也就是说,在IDE中工作可能会使这更容易或更难,但是你这样做将取决于具体的IDE。

答案 4 :(得分:1)

答案 5 :(得分:1)

我在我的ubuntu机器上使用7 grails版本。将下面的代码放在.bashrc文件的底部。

function switchGrails() {

echo“切换到grails版本:$ 1”

sudo rm / opt / grails

sudo ln -s / opt / $ 1 / opt / grails

回声“完成!”

}

alias grails225 ='switchGrails“grails-2.2.5”'

alias grails224 ='switchGrails“grails-2.2.4”'

alias grails223 ='switchGrails“grails-2.2.3”'

alias grails233 ='switchGrails'grails-2.3.3“'

别名grails235 ='switchGrails“grails-2.3.5”'

alias grails237 ='switchGrails“grails-2.3.7”'

alias grails2311 ='switchGrails'grails-2.3.11“'

保存并退出后。编译.bashrc文件。输入cd和。 .bashrc来编译.bashrc文件。

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

答案 6 :(得分: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

执行bash脚本

$ bash grails.sh