1

我正在尝试在 SUSE SLES 11 SP2 上通过 Puppet 安装 Groovy。我已经安装了 Groovy 文件,但现在我需要设置环境变量。我正在使用 shell 脚本来设置值,当我回显这些值时,它们是正确的。

echo $JAVA_HOME
/myapplication/mypath/jdk1.6.0_30

当我运行命令“groovy -version”时,我得到这个错误:/bin/javaAVA_HOME is not defined correctly, can not execute: /myapplication/mypath/jdk1.6.0_30.
这不是错字,这实际上是我得到的输出!:)

这是我的 java 安装的正确路径。为什么“/bin/java”替换了“JAVA_HOME”中的“J”?我搜索了 /bin 和 /usr/bin ,两个目录都没有 java 目录。

如果我从服务器上的命令行设置值,一切正常。

这是我的shell脚本:

# groovy.sh
export JAVA_HOME=/myapplication/mypath/jdk1.6.0_30
export GROOVY_HOME=/myapplication/mypath/groovy-2.0.7
export PATH=$PATH:/myapplication/mypath/groovy-2.0.7/bin

这是我的 puppet 模块的片段:

$groovy_sh = "/etc/profile.d/groovy.sh"

file { $groovy_sh:
ensure => present,
source => "puppet:///modules/groovy/groovy.sh",
owner => "myuser",
group => "mygroup",
mode => 777,
}
4

0 回答 0