Ram*_*tha 18 java environment-variables
我知道这export CLASSPATH=/usr/local/java/tools.jar:$CLASSPATH会将 tools.jar 添加到 CLASSPATH,但我想将文件夹设置为 CLASSPATH
像这样
export CLASSPATH=/usr/local/java/lib/:$CLASSPATH
Run Code Online (Sandbox Code Playgroud)
但它不工作。
mic*_*ael 13
首先,一般来说,设置 env varCLASSPATH通常会导致比它解决的问题更多的问题——因为并非所有应用程序都想要/需要相同的类路径,并且经常在类路径中包含不需要甚至不需要的 jar 时中断。一个 Java 应用程序应该只包含它需要的最少数量的 jar,不多也不少。
当您有特定的、需要设置类路径的应用程序时,通常首选命令行选项:java -cp path1:path2:.... 桌面图标可以更改其命令以包含这些选项,或者可以修改 shell 脚本以包含这些选项。
话虽如此(并且由于规则总是有例外),那么根据 java 的版本(这需要 java 6 或更高版本),您可以通过添加“ *”来指定将整个 jar 目录添加到类路径中在目录的末尾;例如,以下内容:
/dir1/foo.jar:/dir2/dir3:/dir5/dir6/*:etc...
Run Code Online (Sandbox Code Playgroud)
方法:
/dir1/foo.jar -(单个jar)将被添加到类路径中;/dir2/dir3- 此目录中所有未 jar 的类都将添加到类路径中(必须在正确的包结构中;例如,com.my.Foo.class必须在 中/dir2/dir3/com/my/Foo.class)/dir5/dir6/*- 此目录中的所有 jar(即/dir5/dir6/*.jar)都将添加到类路径中。请注意,这个 " *" 不是通配符(您不能使用f*.jar甚至*.jar);这是一个特殊字符,表示“添加所有罐子”通常,如果您必须将整个 jar 目录添加到应用程序的类路径,则应用程序未正确捆绑。相反,应用程序应该有一个清单,其中包含它所依赖的 jar 列表。或者至少,只应将一个 jar 添加到您的类路径中,并且该 jar 可以在其清单中包含某个子目录中的整个 jar 列表。
| 归档时间: |
|
| 查看次数: |
122952 次 |
| 最近记录: |