相关疑难解决方法(0)

如何使用JUnit测试依赖于环境变量的代码?

我有一段使用环境变量的Java代码,代码的行为取决于此变量的值.我想用环境变量的不同值测试此代码.我怎么能在JUnit中这样做?

我已经看到了一些在Java设置环境变量的方法,但是我对它的单元测试方面更感兴趣,特别是考虑到测试不应该相互干扰.

java testing junit unit-testing environment-variables

113
推荐指数
10
解决办法
10万
查看次数

是否可以在运行时从Java设置环境变量?

是否可以在运行时从Java应用程序设置环境变量?在Java 1.5 java.lang.System类中有getenv()方法,我只需要一个setenv()方法......

是否可以在java进程本身中修改环境变量; 不在孩子的过程中.

是否有可能通过JNI实现它?那会怎么样?

谢谢.

编辑:好的,让我这样说吧 - 我们可以用Java做以下几点.请回答.

  1. 我们可以修改当前流程的环境吗?
  2. 我们可以修改父进程的环境吗?
  3. 我们可以修改子进程的环境吗?

Hemal Pandya回答说:"您可以修改当前和子进程的环境,但不能修改产生此进程的父进程的环境." 你同意吗?

java environment-variables

42
推荐指数
5
解决办法
6万
查看次数

System属性和环境变量之间的区别是什么

我不清楚这一点.当我在applet查看器中运行java App或运行Applet时(在IDE环境中), System.getProperty("java.class.path")给我与System.getenv("CLASSPATH")我的env变量中定义的CLASSPATH 相同.

但是当我将我的applet部署到web服务器并从与客户端相同的计算机访问它时,我得到了两个不同的结果.(System.getProperty("java.class.path")仅指向JRE home并System.getenv("CLASSPATH")返回null).

还有一些令我惊讶的事情:

对于applet部分,env var JAVA_HOME,在浏览器和Applet Viewer中部署applet时得到的结果相同.

如果我在系统级别定义一个env变量,并使用getenv("envName")结果是null.无论如何我可以定义一个并在我的Java程序中获取它吗?

java system classpath environment-variables system-properties

35
推荐指数
2
解决办法
2万
查看次数