如何在我的 Java 程序的类路径中放置一些东西?
How do I place something in the classpath of my Java program?
我不太确定类路径是如何工作的,如果这是一个愚蠢的问题,我什至很抱歉,但我在使用 API 时遇到错误,说 SLF4J 无法访问 org. slf4j.impl.StaticLoggerBinder。我正在查看 SLF4J 文档,它提到如果有人真的不关心这个不加载,我不关心(希望 API 也不关心),那么“放置 slf4j-nop.jar在您的应用程序的类路径上。"
我只能找到关于如何设置我的 OS 类路径之类的东西,我不确定如果确实如此,我是否能够做到这一点我需要做什么,因为它是从我正在使用的 API 的 gradle 安装的依赖项。
提前致谢!
来自Oracle Docs:
The preferred way to specify the class path is by using the -cp
command line switch. This allows the CLASSPATH
to be set individually for each application without affecting other applications. Setting the CLASSPATH
can be tricky and should be performed with care.
即:
- 在运行程序时指定.jar文件所在的目录:
$ java -cp /path/to/slf4j-nop.jar -otherflags /path/to/Class.java
- 将 .jar 文件复制到文件所在的目录(或者实际上,您 运行
java
命令所在的目录)。来自同一文档:
The default value of the class path is ".", meaning that only the current directory is searched.
我不太确定类路径是如何工作的,如果这是一个愚蠢的问题,我什至很抱歉,但我在使用 API 时遇到错误,说 SLF4J 无法访问 org. slf4j.impl.StaticLoggerBinder。我正在查看 SLF4J 文档,它提到如果有人真的不关心这个不加载,我不关心(希望 API 也不关心),那么“放置 slf4j-nop.jar在您的应用程序的类路径上。"
我只能找到关于如何设置我的 OS 类路径之类的东西,我不确定如果确实如此,我是否能够做到这一点我需要做什么,因为它是从我正在使用的 API 的 gradle 安装的依赖项。
提前致谢!
来自Oracle Docs:
The preferred way to specify the class path is by using the
-cp
command line switch. This allows theCLASSPATH
to be set individually for each application without affecting other applications. Setting theCLASSPATH
can be tricky and should be performed with care.
即:
- 在运行程序时指定.jar文件所在的目录:
$ java -cp /path/to/slf4j-nop.jar -otherflags /path/to/Class.java
- 将 .jar 文件复制到文件所在的目录(或者实际上,您 运行
java
命令所在的目录)。来自同一文档:
The default value of the class path is ".", meaning that only the current directory is searched.