我从shell脚本调用java程序。 Shell脚本包含一个需要在java程序中使用的变量。
Shell脚本:
for s in 0 1
do
javac -cp $CLASSPATH ./src/*.java
java -cp $CLASSPATH Test
done
Test.java
main() {
sValue = ...; // here I need to get value from shell
someMethod(sValue) {
. ... .
}
}
shell脚本有变量s,值为0和1.我需要在java程序Test中使用这个变量。
在我的程序中,我无法将此值作为参数传递为“java -cp $ CLASSPATH Test $ s”。所以请提供其他解决方案。
答案 0 :(得分:1)
可行(取决于shell)您将导出s
变量以使其对Java进程可见:
for s in 0 1
do
export V=$s
javac -cp $CLASSPATH ./src/*.java
java -cp $CLASSPATH Test
done
然后在Test.java中System.getenv("V")
。
答案 1 :(得分:0)
你想要的是System.getEnv(...)。