为用于java编译的slf4j设置类路径
我在为为用于java编译的slf4j设置类路径,java,classpath,javac,slf4j,Java,Classpath,Javac,Slf4j,我在为slf4j设置classpath以编译java文件时遇到问题。 我尝试了两种方法: 1.在命令行中提供类路径 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/sc
slf4j
设置classpath
以编译java文件时遇到问题。
我尝试了两种方法:
1.在命令行中提供类路径
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
我试图将类路径导出到我的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
我正在尝试将所有java文件编译成两个包
。但是我需要在我的类路径中有slf4j
。但不知何故,我无法让它工作。
谢谢此依赖项是api:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
</dependency>
org.slf4j
slf4j api
1.7.5
编译时需要类路径中的slf4j-api.jar,而不是slf4j-log4j12.jar
它在maven中工作,因为绑定库(slf4j-log4j12)对api有依赖性,因此maven也会加载该api,而无需将其明确定义为依赖性。您也需要slf4 api,而不仅仅是绑定库。实际上,您只需要slf4j api,绑定库只在运行时才需要。@sheltem:对不起,您能解释一下这里的意思吗?当我使用maven
时,我可以很好地编译它。如果依赖项不正确,maven会下载它吗?既然我已经使用了maven,它应该已经下载了…?它应该在您本地的maven存储库中,是的。我猜应该是/Users/page/.m2/repository/org/slf4j/slf4j-api/1.7.5/slf4j-api-1.7.5.jar