0

我对 Maven 和通过命令行执行 java 类调用有疑问。

我的应用程序使用 spring、hibernate 和 maven。

我的 pom.xml 小片段是这样的:

<profile>
<id>import</id>
<build>
 <plugins>
  <plugin>
   <groupId>org.codehaus.mojo</groupId>
   <artifactId>exec-maven-plugin</artifactId>
   <executions>
    <execution>
     <goals>
      <goal>java</goal>
     </goals>
     <phase>test</phase>
      <configuration>
        <mainClass>com.mycompany.App</mainClass>
      </configuration>
     </execution>
    </executions>
  </plugin>
 </plugins>
</build>
</profile>

我尝试从 eclipse 运行并且我的应用程序可以工作,而在这样的命令行上: mvn test -Pimport 我有一些错误,例如:

"nested exception is java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory"

例如:依赖是这样定义的:

<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.5.8</version>
<scope>runtime</scope>
</dependency>

有什么建议么?

谢谢

4

1 回答 1

2

我想你可能和这个有同样的问题。您的类路径上也应该有一个实现 jar。例如

        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-simple</artifactId>
            <version>1.5.8</version>
        </dependency>

您的 pom.xml 中是否还有其他提到 slf4j 的内容?

于 2013-05-23T17:00:53.647 回答