我试图了解类路径是如何工作的。在网上搜索之后,这是我到目前为止所到达的地方:
我已经添加了
export CLASSPATH="/home/foo:/home/foo/Java_code/my_code"
在/etc/environment
。顺便说一下,我正在运行Ubuntu。
Java找到路径并进行编译而没有问题。
问题是,如果我更改CLASSPATH,然后执行以下操作:source /etc/environment
,则不会应用新的CLASSPATH。当且仅当我重新启动系统时,它才适用。例如,如果我删除了
export CLASSPATH="/home/foo:/home/foo/Java_code/my_code"
行,然后我执行/ etc / environment的源代码,最后我做了echo $CLASSPATH
,得到的是/home/foo:/home/foo/Java_code/my_code
。我想我应该留空行,不是吗?
有没有一种方法可以立即应用PATH或CLASSPATH变量中的更改而不必重新启动系统?
它可能会帮助您了解/ etc / environment文件最初仅包含以下行:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
感谢您的时间。
我认为您不应将本地目录本地的任何路径放在系统范围的文件中。/etc/environment
除非您提供一些对所有用户都是必要或有益的更改,否则我将不为所动。将对CLASSPATH的所有更改都放在.bashrc
主目录中。
CLASSPATH=$CLASSPATH:/home/foo:/home/foo/Java_code/my_code
export CLASSPATH
这样,您就可以获取它,并且任何新近启动的bash都将立即拥有设置。
问题内容: 我正在编写一个使用Oracle JDBC驱动程序的Java程序。我已经在我的类路径中设置了它。当我在IDE中运行程序(作为jdbc作为库添加)时,程序运行正常。当我尝试部署它时,它完全忽略了classpath中的清单,并给了我一个NoClassDefFoundError。 我想使用客户端的JDBC驱动程序(已安装的JDBC驱动程序),并且不提供自己的驱动程序。我打包了来自JDevelo
问题内容: 我有两节课: MyApplication 库 该库已被编译为Library.class,并且源代码不再可用。我现在正在尝试从源代码编译MyApplication。MyApplication取决于库。该库的软件包名称为org.myCompany。我尝试将我的类路径设置为以下内容: 产生以下javac编译器错误消息: 所以我将类路径更改为: 产生完全相同的错误消息。 如何设置Windows
问题内容: 我一直在尝试运行一个jar文件-我们称它为test.jar-在Unix系统上使用Sybase jconn3.jar。 我创建了一个具有以下内容的MANIFEST.MF文件: 这给出了ClassNotFoundError。$ SYBASE是指向/ opt / sybase13的系统变量;我还尝试了以下方法: 和 但是,如果我将jconn3.jar文件从$ SYBASE / jConnec
我正在尝试为我正在编写的程序使用其他JAR。 我安装了所有必需的文件,并将它们添加到类路径中,但Java无法识别这些包。 我在jar位置之间加了分号,但Java无法识别jar中的包。为什么会这样? 例如,我的类路径如下所示: .; C:\Program Files(x86)\Java\jre7\lib\exts\QTJava.zip;C:\用户\JOE\下载\aseymock-3.2\asymoc
我安装了Apache Tomcat来使用servlet。我设置了很少的系统变量。 Catalina_home C:\ruby200\bin;C:\program files\java\jdk1.7.0_09\bin;C:\users\home\appdata\roaming\npm
我在设置Java开发环境时遇到了一个问题。在过去,我安装了Java,然后安装了IDE,然后开始编写代码。我现在开始设置我的笔记本电脑,使用命令行编译和记事本作为我的代码编辑器。这是我第一次尝试纠正错误。 我运行javac,它创建了我的。类文件没有问题,但是我尝试用java A运行类文件,它抛出了一个错误: c:\工作区 我的类路径设置为C:\Program Files\Java\jdk-14.0.