web-dev-qa-db-ja.com

パスが設定されているにもかかわらず、(RHEL 6.6で)antを実行すると、「tools.jarを見つけることができません。それが...で見つかるはずです」と表示されるのはなぜですか?

/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 

(私は$ Java_HOMEを設定するためにStack Overflowで この質問 の回答に従いました)。

次に、コマンドラインにsource /etc/profile.d/jdk_home.shと入力しました。その後、echo $Java_HOMEと入力すると、次の出力が得られました。

/usr/lib/jvm/Java-1.7.0-openjdk-1.7.0.131.x86_64

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

次に、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>

コマンドラインでantと入力しました:

[root@gksrv dal]# ant

これにより、次の出力が生成されました。

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

tools.jar警告が表示されるのはなぜですか?パスに必要な情報が含まれていませんか?

3
a_sid

私は後でそれを発見しましたtools.jarjdkディレクトリにありませんでした。コマンドyum install Java-1.8.0-openjdk-develand lib/tools.jar Javaフォルダーで使用可能になりました。この後にantコマンドを実行すると、同じ警告が表示されませんでした。

7
a_sid