我有一个问题,我必须编译一个java项目(例如:https://github.com/iluwatar/java-design-patterns/tree/master/bridge),但它是一个maven项目,我必须导入slf4j。
我尝试过使用 sudo apt-get install libslf4j-java
或手动下载软件包(此处: https://www.slf4j.org/download.html ),但当我使用 javac
时它永远不会工作>.
我收到此错误:错误:包 org.slf4j 不存在
你有什么想法吗?我陷入了这个错误,并且没有发现任何类似的问题...
编辑:目标是在没有 Maven 的情况下进行编译,这对我来说是困难的事情。
编辑2:我已经做到了:
javac -cp /usr/share/maven/lib/slf4j-simple.jar:java-design-patterns/bridge/src/main/java/com/iluwatar/bridge/App.java
javac: no source files
Usage: javac <options> <source files>
use -help for a list of possible options
javac -cp -sourcepath /usr/share/maven/lib/slf4j-simple.jar:java-design-patterns/bridge/src/main/java/com/iluwatar/bridge/App.java
javac: file not found: /usr/share/maven/lib/slf4j-simple.jar:java-design-patterns/bridge/src/main/java/com/iluwatar/bridge/App.java
Usage: javac <options> <source files>
use -help for a list of possible options
我不知道该怎么办,maven 就这么简单,当我看到这个的时候我就迷路了。
我创建了 2 个文件:jars(我将在其中创建并放置 jars)和 temp(我将在其中创建并放置类)
编辑3:我下载了该软件包并将其放在. 然后我使用: javac -classpath slf4j-1.7.25/slf4j-api-1.7.25-sources.jar -d temp java-design-patterns/bridge/src/main/java/com/iluwatar/bridge/*.java 并且效果很好。
最佳答案
从命令行编译必须调用 javac
并正确传递参数:
javac -cp lib1.jar:lib2.jar:lib3.jar... <source files>
就您而言:
javac -cp /usr/share/maven/lib/slf4j-simple.jar java-design-patterns/bridge/src/main/java/com/iluwatar/bridge/*.java
P.S.:通过命令行编译真的很烦人。我建议您使用 Maven,因为它已经是一个 Maven 项目。
关于java - 如何在命令行中使用repo maven(slf4j)编译java项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46161955/