为 SLF4j 设置 Classpath 以进行 Java 编译



我在为 compiling java files 设置slf4j classpath时遇到问题。我尝试了两种方法:1. 提供classpath command line

javac -cp /Users/page/.m2/repository/org/slf4j/slf4j-log4j12/1.7.5/slf4j-log4j12-1.7.5.jar src/main/java/com/scg/domain/*.java src/main/java/com/scg/util/*.java

这给出了以下错误:

src/main/java/com/scg/util/ListFactory.java:8: error: package org.slf4j does not exist
import org.slf4j.Logger;
                ^
src/main/java/com/scg/util/ListFactory.java:9: error: package org.slf4j does not exist
import org.slf4j.LoggerFactory;
...../long error message
  1. 我试图将CLASSPATH export到我的env变量。

export CLASSPATH=/Users/page/.m2/repository/org/slf4j/slf4j-log4j12/1.7.5/slf4j-log4j12-1.7.5.jar

这也无济于事,当我尝试时,导致相同的错误

javac src/main/java/com/scg/domain/*.java src/main/java/com/scg/util/*.java

我正在尝试在两个packagescompile所有 java 文件,但我需要在我的类路径中slf4j . but somehow I am not able to get it work. 谢谢

此依赖项是 api:

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.5</version>
</dependency>

你需要类路径中的 slf4j-api.jar 进行编译,而不是 slf4j-log4j12.jar。

它在 maven 中工作,因为 binding-lib (slf4j-log4j12) 依赖于 api,因此 maven 也会加载它,而无需您明确将其定义为依赖项。

最新更新