我知道这export CLASSPATH=/usr/local/java/tools.jar:$CLASSPATH
会将 tools.jar 添加到 CLASSPATH,但我想将文件夹设置为 CLASSPATH
像这样
export CLASSPATH=/usr/local/java/lib/:$CLASSPATH
但它不起作用。
答案1
首先,一般来说,设置环境变量CLASSPATH
通常会导致比它解决的问题更多的问题 —— 因为并非所有应用程序都希望/需要相同的类路径,并且当类路径中包含不需要的甚至不需要的 jar 时,通常会中断。Java 应用程序应该只包含它所需的最少数量的 jar,不多也不少。
当您有特定的、单独的应用程序需要设置类路径时,通常首选命令行选项:java -cp path1:path2:...
。可以修改桌面图标的命令以包含这些选项,或者可以修改 shell 脚本以包含这些选项。
话虽如此(因为规则总是有例外),然后根据 java 的版本(这需要 java 6 或更高版本),您可以指定将整个 jar 目录添加到类路径中,方法是在*
目录末尾添加“ ”;例如以下内容:
/dir1/foo.jar:/dir2/dir3:/dir5/dir6/*:etc...
方法:
/dir1/foo.jar
- (单个 jar)将被添加到类路径中;/dir2/dir3
- 此目录中所有未解压的类都将添加到类路径中(必须位于正确的包结构中;例如,com.my.Foo.class
必须在中/dir2/dir3/com/my/Foo.class
)/dir5/dir6/*
- 此目录中的所有 jar 文件(即/dir5/dir6/*.jar
)都将添加到类路径中。请注意,这个“*
”不是通配符(您不能使用f*.jar
或 甚至*.jar
);它是一个特殊字符,表示“添加所有 jar 文件”
一般来说,如果您必须将整个目录的 jar 文件添加到应用程序的类路径中,则应用程序捆绑不正确。相反,应用程序应该有一个清单,其中包含它所依赖的 jar 文件列表。或者至少,只应将一个 jar 文件添加到您的类路径中,并且该 jar 文件可以在其清单中包含某个子目录中的整个 jar 文件列表。
答案2
如果您想永久设置类路径,那么 1)找出 java 的安装位置..您可以使用“whereis java”openjdk-7/6 位于 /usr/lib/jvm/.....
2)我们需要在/etc/environment中设置CLASSPATH
sudo gedit /etc/environment
3)添加以下内容...(输入时不要留任何空格)(根据您的 Java 版本和安装进行自定义)(此主路径适用于 Open JDK 7)
JAVA_HOME="/usr/lib/jvm/java-7-openjdk-i386/bin"
export JAVA_HOME
CLASSPATH=".:/usr/lib/jvm/java-7-openjdk-i386/lib:/home/laptop/Desktop/a2"
export CLASSPATH
用“:”分隔目录
答案3
打开终端并输入
sudo nano〜/ .bashrc
添加您需要的所有出口,如...
导出JAVA_HOME=/usr/local/java/jdk1.6.0_06(你的路径)
导出 ANT_HOME=/opt/ant/apache-ant-1.9.4
最后重新启动终端以使更改生效