我正在尝试运行Java 7 ProcessBuilder安装在系统上的可执行文件。我注意到环境变量PATH可以通过以下方式获得
System.getenv("PATH");
不包括我自己的自定义设置路径。它返回以下内容:
/usr/bin:/bin:/usr/sbin:/sbin
我的路径如下所示:
/Users/saschaf/.bin:/Users/saschaf/Entwicklung/spring-roo-1.2.4.RELEASE/bin:/usr/local/opt/ruby/bin:/usr/local/bin:/Users/saschaf/Entwicklung/android-sdk-macosx/tools:/Users/saschaf/Entwicklung/android-sdk-macosx/platform-tools:/usr/local/share/npm/bin:/Users/saschaf/node_modules/.bin:/Users/saschaf/Entwicklung/git/tools:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
我不知道如何设置PATH变量,以便JVM使用正确的变量。这里有什么问题?
我正在运行最新的OS X Mavericks,JDK 1.7.0_25-b15,Maven Apache Maven 3.1.1。
直接来自文档:
您可以在不设置PATH变量的情况下很好地运行JDK,或者可以选择方便地设置它。但是,如果希望能够从任何目录运行可执行文件(javac,java,javadoc等),而不必键入命令的完整路径,则应设置路径变量。如果未设置PATH变量,则每次运行可执行文件时都需要指定其完整路径,例如:
% /usr/local/jdk1.7.0/bin/javac MyClass.java
要找出路径是否正确设置,请执行:
% java -version
如果可以找到,它将打印java工具的版本。如果版本太旧或出现错误java:找不到命令,则路径设置不正确。
要永久设置路径,请在启动文件中设置路径。
对于C shell(csh),编辑启动文件(〜/ .cshrc):
set path=(/usr/local/jdk1.7.0/bin )
对于bash,请编辑启动文件(〜/ .bashrc):
PATH=/usr/local/jdk1.7.0/bin:
export PATH
对于ksh,启动文件由环境变量ENV命名。设置路径:
PATH=/usr/local/jdk1.7.0/bin:
export PATH
对于sh,编辑配置文件(〜/ .profile):
PATH=/usr/local/jdk1.7.0/bin:
export PATH
然后加载启动文件,并通过重复java命令验证是否设置了路径:
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句