非常基本的Maven-can';不编译
我正在用一个简单的Maven项目运行basic非常基本的Maven-can';不编译,maven,Maven,我正在用一个简单的Maven项目运行basicHelloWorld。mvn编译工作正常,然后在我的HelloWorld中,我添加org.slf4j.*作为导入,然后尝试一个单行记录器 当我执行mvn编译时,我得到一个编译错误,指示未找到org.slf4f 它应该足够简单,看起来编译并没有指向它在我的.m2驱动器上下载的大量jar。我在那里找到了正确的罐子。我遗漏了一些非常基本的东西,在调试器中,我看到-classpath除了指向我的java类(一个类,HelloWorld)之外,没有指向任何东西
HelloWorld
。mvn
编译工作正常,然后在我的HelloWorld
中,我添加org.slf4j.*
作为导入,然后尝试一个单行记录器
当我执行mvn编译时
,我得到一个编译错误,指示未找到org.slf4f
它应该足够简单,看起来编译并没有指向它在我的.m2驱动器上下载的大量jar。我在那里找到了正确的罐子。我遗漏了一些非常基本的东西,在调试器中,我看到-classpath
除了指向我的java类(一个类,HelloWorld)之外,没有指向任何东西?这里有我缺少的基本元素吗
下面是我的pom文件,该版本也存在于我的.m2存储库中,尽管Maven神奇地在存储库中找到了这些JAR
[DEBUG] -d C:\TestMaven\target\classes -classpath C:\TestMaven\target\classes; -sourcepath C:\TestMaven\src\main\java; -g -nowarn -target 1.5 -source 1.5
4.0.0
org.koushik.javabrains
马文特斯塔普
1.0-快照
罐子
马文特斯塔普
http://maven.apache.org
UTF-8
朱尼特
朱尼特
3.8.1
试验
org.slf4j
slf4j api
1.7.12
试验
只要遵循(如下所示),就不需要指定源代码和类路径。对于简单的情况,将
pom.xml
放在项目的根目录中,然后运行mvn测试
基本的maven项目布局:
project
|-- pom.xml
`-- src
|-- main
| `-- java
| `-- resources
`-- test
`-- java
`-- resources
您可能希望在以后运行mvn安装
或其他操作,但这就足够了
如果您仍在挣扎,请运行并将代码移动到生成的项目中 您将slf4j api
声明为test
依赖项。这意味着它将仅在单元测试执行期间出现在类路径中,而不是在编译期间(请参阅)
您需要将范围更改为compile
。由于这是默认范围,我们可以忽略它
org.slf4j
slf4j api
1.7.12
ahhh,就是这样。。。我应该看到…这就是教程的问题让人更加自满。。谢谢@JaySchrock很高兴我能帮上忙。如果这个答案最好回答你的问题,请考虑这个答案。