我有一个在Eclipse中创建的Maven项目,但我不耐烦地开始在命令行上运行mvn
,而不是解决Eclipse引发的所有错误。
现在我也想从Eclipse中得到我所做的工作。我发现你可以通过右键单击项目来运行mvn compile
,然后“Run as”>“Maven build”。Eclipse实际上运行了Maven目标,但控制台窗口只显示:
SLF4J: No SLF4J providers were found.
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See https://www.slf4j.org/codes.html#noProviders for further details.
SLF4J: Class path contains SLF4J bindings targeting slf4j-api versions 1.7.x or earlier.
SLF4J: Ignoring binding found at [jar:file:/C:/Users/kilian/.p2/pool/plugins/org.eclipse.m2e.maven.runtime_3.8.701.20230209-1606/jars/maven-slf4j-provider-3.8.7.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See https://www.slf4j.org/codes.html#ignoredBindings for an explanation.
如果我将org.slf4j:slf4j-api:2.0.7
作为依赖项添加到项目中,那么来自 within my program(使用Log4j 2)的日志语句就会出现。但没有Maven输出。我想这是一个单独的问题。我可以调整运行配置,并设置一个复选框“重复输出”。然后它将打印
Apache Maven 3.8.7 (b89d5959fcde851dcb1c8946a785a163f14e1e29)[m
Maven home: C:\Users\kilian\code\eclipse-workspace\test\EMBEDDED
Java version: 17.0.7, vendor: Oracle Corporation, runtime: C:\Program Files\Java\jdk-17
Default locale: de_DE, platform encoding: UTF-8
OS name: "windows 11", version: "10.0", arch: "amd64", family: "windows"
除了关于SLF 4J的警告。但是没有一个实际的Maven输出(Maven通常输出的整个BUILD SUCCESS内容)被打印出来。
我检查了是否有任何rogue SLF4J providers(这一个实际上是关于我的具体问题,这就是为什么我认为他们可能是相关的),并验证了“M2 E-SLF 4J over Logback Logging”插件安装。
我正在运行Eclipse版本2023-03(4.27.0),使用m2 e 2.2.1和SLF 4J/Logback插件的版本2.2.1。我刚刚使用maven-archetype-quickstart:1.4
创建了一个空白项目,它具有相同的行为。项目创建过程 * 确实 * 将所有输出打印到Eclipse控制台。
有什么想法可能是错的吗?
编辑:m2 e插件版本2.4.0不再有这个问题。
1条答案
按热度按时间j2cgzkjk1#
我更新了m2 e插件到2.4.0版本,现在问题已经解决了。谢谢你,豪格!