如何在java程序中使用shell脚本变量而不作为参数传递

如何在java程序中使用shell脚本变量而不作为参数传递,java,shell,Java,Shell,我正在从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) { . ... . } } shel

我正在从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脚本具有值为0和1的变量s。我需要在java程序测试中使用这个变量

在我的程序中,我不能将这个值作为参数传递为“java-cp$CLASSPATH Test$s”。因此,请提供一些其他解决方案。

您想要的是。

可能(取决于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”)