如何在Ubuntu中设置Java的类路径并使用Jar文件?

3

我正试图从jar文件中导入类。我希望将所有的jar文件放置在以下目录中:

/home/somebody/lib/java/

使用下面给出的命令进行编译,会显示如下信息:

包com.a.A不存在**。java C.java

我在配置文件中设置了以下内容。
CLASSPATH=/home/somebody/lib/java

然后将其导出。同时添加到PATH中。

C.java

import com.a.A;
import com.a.AA;
import com.b.B;
import com.b.BB;

class B {
    public static void main() {
        new A();
        new AA();
        new B();
        new BB();
    }
}

类文件在以下a.jarb.jar中。

2个回答

3
您应该将您的"jar文件"添加到"CLASSPATH"中:
export CLASSPATH=/home/somebody/lib/java/a.jar:/home/somebody/lib/java/b.jar

类路径支持目录(包含*.class文件)或者单独的jar文件。你也可以添加通配符(或使用java -classpath选项),但现在先不考虑这个,以免进一步复杂化问题 ;)
顺便说一下,你完全不需要修改PATH环境变量。CLASSPATH足矣。

谢谢@Paulo...是否有其他方法,如果我们需要从三个或四个jar文件中添加文件,那么它会更方便一些... - Tomonso Ejang
尝试使用'/home/somebody/lib/java/*.jar'这个语句。棘手的部分是要确保您的 shell 不会为您展开通配符。无论如何,我认为我的建议应该能够正常工作 ;) - Paulo Mattos
通常不建议使用CLASSPATH环境变量,因为它会影响每个Java程序。通常您希望为不同的程序使用不同的类路径,所以不建议这样做。 - Lew Bloch

0
根据文档
与全局CLASSPATH环境变量相比,最好在命令中使用类路径选项(-classpath-cp)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接