如何在命令行中使用repo maven(slf4j)编译java项目?

时间:2017-09-11 18:13:34

标签: java git command-line

我有一个问题,我必须编译一个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时它无法正常工作。

我收到此错误:error: package org.slf4j does not exist

你有什么想法吗?我坚持这个错误,我没有发现任何类似的问题......

编辑:目标是在没有maven的情况下编译,这对我来说很难。

EDIT2:我做到了:

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(我将创建并放置jar)和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 它运作良好。

1 个答案:

答案 0 :(得分:1)

从命令行编译必须完成调用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。:编译trhough命令行真的很烦人。我建议你使用Maven,因为它已经是Maven项目了。