无法访问$ PATH中的文件


1

这是我的 /etc/paths

/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin

我添加了一个文件 yuicompressor.jar/usr/local/bin。然后我跑了:

sudo java -jar yuicompressor.jar

但它说

Unable to access jarfile yuicompressor.jar

我究竟做错了什么?


1
Java不搜索 PATH 对于您指定的罐子。 sh script.sh 如果,也不会工作 script.sh 是在 PATH
Daniel Beck

哦哇,现在我觉得愚蠢。
Brandon

Answers:


2

PATH仅用于可执行文件。当您没有提供显式路径(例如/ usr / bin / java或./java)时,shell(通常在MacOSX上的bash)用于查找可执行文件。

一旦你运行java,现在加载了java,它需要弄清楚事情的位置。外壳完成了。那么,java本身是否有任何环境变量来检查可能有帮助?通常,您可以尝试CLASSPATH。这给出了一个jar列表,​​用于搜索可能不在java查找的正常位置的类。

但在这种情况下,根据您的语法,我认为它不会有所帮助。你告诉它一个Jarfile的特定路径。我只是明确地说出了罐子。可能会使用脚本为您执行此操作,而不是全部输入。我看到类似的东西:

#!/bin/bash

sudo java -jar /path/to/yuicompressor.jar

在你的未来。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.