a_s*_*sid 3 linux rhel path java environment-variables
我在其中创建了一个脚本/etc/profile.d并将其命名为jdk_home.sh. 内容jdk_home.sh如下:
#!/bin/sh
export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::")
export PATH=$JAVA_HOME/bin:$PATH
Run Code Online (Sandbox Code Playgroud)
(我按照Stack Overflow 上这个问题的答案来设置 $JAVA_HOME)。
然后我source /etc/profile.d/jdk_home.sh在命令行上输入。之后,我打字echo $JAVA_HOME,它给了我以下输出:
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.131.x86_64
Run Code Online (Sandbox Code Playgroud)
输入后,echo $PATH我得到了这个输出:
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.131.x86_64/bin:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.131.x86_64/bin:/bin:/bin:/bin:/bin:/bin:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.121-0.b13.el6_8.x86_64/bin:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.121/bin:/bin:/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/root/bin:/bin:/usr/apache/apache-ant-1.9.9/bin:/bin:/bin:/bin:/bin:/bin:/bin
Run Code Online (Sandbox Code Playgroud)
然后,我在名为 的项目文件夹中打开了另一个终端dal。我放在build.xml那个文件夹里。我的build.xml有以下内容:
<project name="Hello World Project" default="info">
<target name="info">
<echo>Hello World - Welcome to Apache Ant!</echo>
</target>
</project>
Run Code Online (Sandbox Code Playgroud)
我在命令行输入 ant :
[root@gksrv dal]# ant
Run Code Online (Sandbox Code Playgroud)
这产生了以下输出:
Unable to locate tools.jar. Expected to find it in /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.121-0.b13.el6_8.x86_64/lib/tools.jar
Buildfile: /root/Desktop/dal/build.xml
info:
[echo] Hello World - Welcome to Apache Ant!
BUILD SUCCESSFUL
Total time: 0 seconds
Run Code Online (Sandbox Code Playgroud)
为什么我会看到tools.jar警告?路径不包含所需的信息吗?
后来我发现它tools.jar不在jdk目录中。我运行了该命令yum install java-1.8.0-openjdk-devel并lib/tools.jar在 java 文件夹中可用。ant在此之后运行命令时,我没有收到相同的警告。