以Java编程设置Linux环境variables【JAVA教程】

!
也想出现在这里? 联系我们
信息

以Java编程设置Linux环境variables,第1张

概述以Java编程设置Linux环境variables

我可以通过RunTime类运行linux命令。 有没有办法从编程设置Java的linux全球环境?

我想通过Java来模拟下面的linux命令语句

root@machine:/tmp# export TEST=v2

我已经使用ProcessBuilder如下,但TEStvariables不会改变。

ProcessBuilder pb = new ProcessBuilder(\”/bin/bash\”,\”-c\”,\”export TEST=v3\” + \”&& exec\”);

更新:实际上,我的最终目标是使用EMAIL_name环境作为电子邮件地址,当我的应用程序和计算机都启动并停止时,这些 *** 作将被发送到EMAIL_name。 在这种情况下,我明白,不可能设置纯粹的Java代码的linux全球环境。 所以我有一个解决方法是EMAIL_name将被保存在一个文件中,它将被更新或读取的linux脚本或Java代码。

从Java ProcessBuilder运行OpenMPI进程时,ompi_evesel-> dispatch()失败

我想在Mac OS / windows系统启动时运行我的Java程序。 我怎样才能做到这一点?

javapath没有指向在windows中的SDKpath

在windows上的Java和环境variables

如何closureswindows 7中打开的端口?

使用framebuffer错误运行JavaFX应用程序错误CubIEboard A10

在windows命令行上基于Eclipse的应用程序输出仅在pipe道中可见(不直接在cmd中)

如何在Java中创build(和读取)windows快捷方式(.lnk文件)?

调用Runtime.getRuntime()。availableProcessors()

无法运行JAR文件

环境变量在设置时只能用于变量被设置的进程产生的进程,所以如果你真的要设置一个影响整个系统的变量,那么没有。 交互式地在linux中完全不能这样做。 你可以做的最好的办法就是改变一个系统启动文件来包含变量,这样你将来做的任何事情都会包含这个变量。

如果你只是想用一些变量集来运行几个进程,那么ProcessBuilder允许你为它产生的进程设置一个环境 。 重复使用一个环境的几个过程是非常微不足道的。

当你说“linux全球环境”时,你的意思是linux环境变量吗? 如果是这样,我认为答案是否定的。 因为这不是一个Java问题。 当一个进程设置了环境变量var时,它只能影响到它自己及其子进程。

你可以通过java将变量更新到/ etc / profile中

if(System.getProperty(\”TEST\”,\”\”).equalsIgnoreCase(\”\”)) { Runtime.getRuntime().exec(new String[]{\”bash\”,\”echo \’export TEST=v2\’ >> /etc/profile\”}) ; /// Also update the System Variable for current process System.setProperty(\”TEST\”,\”v2\”) ; }

这将从下次登录或如果你明确的源代码生效。

我在bash中使用这行代码

echo -e PATH=\”/usr/lib/jvm/java-7-openjdk-i386/bin:$PATH\” >> $HOME/.profile

连接本地用户的路径

总结

以上是内存溢出为你收集整理的以Java编程设置Linux环境variables全部内容,希望文章能够帮你解决以Java编程设置Linux环境variables所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

© 版权声明
THE END
喜欢就支持一下吧
点赞162 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容