Java Sedgewick-算法4库

Java Sedgewick-算法4库,java,ubuntu,classpath,Java,Ubuntu,Classpath,我正试图将algs4库用于Sedgewick的书Algorithms 4,但这些都不起作用 我想我正确地遵循了网站上的指南 我将文件stdlib.jar和algs4.jar保存在~/algs4目录中,并在~/.profile文件中追加行export CLASSPATH=$CLASSPATH:~/algs4/stdlib.jar:~/algs4/algs4.jar 事情应该会成功的,对吗? 我哪里出错了?快跑 . ~/.profile 刷新您的个人资料 编辑 通常在Linux中运行命令将创建一

我正试图将algs4库用于Sedgewick的书Algorithms 4,但这些都不起作用

我想我正确地遵循了网站上的指南

我将文件stdlib.jar和algs4.jar保存在~/algs4目录中,并在~/.profile文件中追加行export CLASSPATH=$CLASSPATH:~/algs4/stdlib.jar:~/algs4/algs4.jar

事情应该会成功的,对吗? 我哪里出错了?

快跑

. ~/.profile 
刷新您的个人资料

编辑

通常在Linux中运行命令将创建一个新的子shell并执行它。这意味着当子shell退出时,命令中设置的任何变量都将丢失。要使变量保持不变,您可以导出它们,或者使用源代码或命令行在当前shell中运行该命令。指挥部

编辑

要知道您的配置文件是什么,您需要知道您正在运行哪个shell。使用ps命令并查看CMD是什么:

$ ps
  PID TTY          TIME CMD
17692 pts/5    00:00:00 zsh
23736 pts/5    00:00:00 ps
这表明我正在运行zsh shell。如果你只是看到sh,你不能马上知道,所以你应该试着跑步

sh --version

你实际上得到了什么例外?Stacktraces会有帮助。编译器声称它找不到使用的符号。新问题。每次重新启动系统时,我都需要刷新配置文件,否则我无法使用库。我能做些什么来解决这个问题呢?如果您正在运行bash shell,那么您应该改为在~/.bash_profile中设置类路径。配置文件由Bourne shell使用。我确实在~/.profile中设置了类路径,因为它是我系统中唯一的一个。我应该创建~/.bash_配置文件吗?如果您运行的是bash,那么应该创建。我担心这样做会损坏系统。.profile表示,如果存在~/.bash\u profile或~/.bash\u登录名,则bash1不会读取此文件。