在OSX上添加到类路径


Answers:


100

如果要使计算机上的每个Java应用程序都可以使用一组特定的JAR文件(或.class文件),那么最好的选择是将这些文件添加到中/Library/Java/Extensions

或者,如果你想这样做的每一个Java应用程序,但只有当的Mac OS X帐户运行它们,然后使用~/Library/Java/Extensions来代替。

编辑:如果您只想对特定的应用程序执行此操作,如Thorbjørn所要求的,那么您将需要告诉我们更多有关应用程序打包的信息。


1
使用Syntastic语法检查器插件使JUnit在Vim上运行,为我节省了一天的精力。我想知道为什么在www ...上没有其他简单的安装示例了
Ory Band

1
为什么MAC不遵守-cp / -classpath选项,看起来它总是从/ Library / Java / JavaVirtualMachines加载jars
Kanagavelu Sugumar,

1
-jar命令能够扫描/ Library / Java / Extensions,〜/ Library / Java / Extensions
Kanagavelu Sugumar

作为一种变通办法,这很有用,但我同意@kanagavelu最好知道为什么类路径被忽略了。
JoshOrndorff

39

在OSX中,您可以像这样从头开始设置类路径:

export CLASSPATH=/path/to/some.jar:/path/to/some/other.jar

或者您可以像这样添加到现有的类路径中:

export CLASSPATH=$CLASSPATH:/path/to/some.jar:/path/to/some/other.jar

这是在回答您的确切问题,我不是在说这是对还是错。我将其留给他人评论。


1
我只想将我的jar添加到classpath。为什么会有通往两个罐子的路径?
cegprakash 2015年

2
他正在展示如何添加1个以上的罐子。他还暗示,仅添加1个jar就是将附加:path/to/jar到现有的classpath @cegprakash
ylun.ca

5

要为单个Java进程指定类路径,可以在运行Java命令时添加类路径选项。

在您的命令行中。使用 java -cp "path/to/your/jar:." main 而不是仅仅 java main

该选项告诉Java在哪里搜索库。


-1

如果您的外壳是tcsh或csh,则可以在/ etc / profile中进行设置。打开终端“ vim / etc / profile”并添加以下行:

setenv CLASSPATH (insert your classpath here)


-8

通常没有必要。首先

echo $CLASSPATH

如果里面有东西,您可能要检查Applications-> Utilites-> Java。


2
为他们修复了此问题,以节省繁琐的投票表决。
Andrew Swan 2014年

返回我一个空行?
Koray Tugay 2014年

2
如果您的外壳中未设置CLASSPATH env var,则会得到一个空行... =>如果您希望它包含某些内容,则应在.bash_profile,.bashrc或您的外壳可能使用的任何env vars源文件中进行设置。 ..
Yordan Georgiev
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.