GVKun编程网logo

maven surefire验证java.lang.ClassNotFoundException(maven surefire报错)

13

以上就是给各位分享mavensurefire验证java.lang.ClassNotFoundException,其中也会对mavensurefire报错进行解释,同时本文还将给你拓展Eclipse-

以上就是给各位分享maven surefire验证java.lang.ClassNotFoundException,其中也会对maven surefire报错进行解释,同时本文还将给你拓展Eclipse-java.lang.ClassNotFoundException、java – Maven exec插件ClassNotFoundException、java.lang.ClassNotFoundException、java.lang.ClassNotFoundException android eclipse maven osx等相关知识,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

maven surefire验证java.lang.ClassNotFoundException(maven surefire报错)

maven surefire验证java.lang.ClassNotFoundException(maven surefire报错)

当我尝试为Java Spring项目运行验证Maven的生命周期时,出现一个奇怪的错误。请注意,它可以使用很好地编译,mvn spring-boot:run但是在我运行时mvn clean verify它会炸毁:

$mvn clean verify -Dsurefire.skip=true -X...Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.209 sec <<< FAILURE! - in com.fitforger.FitForgerBackendApplicationTests    initializationError(com.fitforger.FitForgerBackendApplicationTests)  Time elapsed: 0.005 sec  <<< ERROR!    java.lang.NoClassDefFoundError: com/fitforger/model/GymRat    Caused by: java.lang.ClassNotFoundException: com.fitforger.model.GymRat

我可以提供哪些相关信息?有关一些初始上下文,请参见下文。

项目结构:

+----src     +----main     |    +----java     |    |    +----com     |    |         +----fitforger     |    |              +----controller     |    |              |    +----GymRatController.java     |    |              |    +----WorkoutNodeController.java     |    |              +----dao     |    |              |    +----GymRatDAO.java     |    |              +----exception     |    |              |    +----GymRatCreationFailure.java     |    |              |    +----GymRatExistsException.java     |    |              |    +----GymRatNotFound.java     |    |              |    +----GymRatUpdateFailure.java     |    |              +----FitForgerBackendApplication.java     |    |              +----model     |    |              |    +----FitForgerModel.java     |    |              |    +----GymRat.java     |    |              |    +----WorkoutAttribute.java     |    |              |    +----WorkoutNode.java     |    |              |    +----WorkoutNodeTypes.java     |    |              +----repository     |    |                   +----CouchbaseRepository.java     |    |                   +----FitForgerRepository.java     |    +----resources     |         +----application.properties     +----test          +----java          |    +----com          |         +----fitforger          |              +----FitForgerBackendApplicationTests.java          |              +----GymRatSteps.java          |              +----repository          |                   +----CouchbaseRepositoryTest.java          +----resources               +----com                    +----fitforger                         +----GymRat.feature

我的pom.xml的相关位:

<build>    <resources>        <resource>            <directory>resources</directory>            <targetPath>${project.build.outputDirectory}</targetPath>            <includes>                <include>application.properties</include>            </includes>        </resource>    </resources>    <plugins>        <plugin>            <groupId>org.apache.maven.plugins</groupId>            <artifactId>maven-compiler-plugin</artifactId>            <version>3.6.1</version>        </plugin>        <plugin>            <groupId>org.apache.maven.plugins</groupId>            <artifactId>maven-failsafe-plugin</artifactId>            <version>2.19.1</version>        </plugin>        <plugin>            <groupId>org.apache.maven.plugins</groupId>            <artifactId>maven-surefire-plugin</artifactId>        </plugin>        <plugin>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-maven-plugin</artifactId>            <version>1.5.1.RELEASE</version>        </plugin>    </plugins>    <pluginManagement>        <plugins>            <plugin>                <groupId>org.springframework.boot</groupId>                <artifactId>spring-boot-maven-plugin</artifactId>                <version>1.5.1.RELEASE</version>                <executions>                    <execution>                        <id>pre-integration-test</id>                        <goals>                            <goal>start</goal>                        </goals>                    </execution>                    <execution>                        <id>post-integration-test</id>                        <goals>                            <goal>stop</goal>                        </goals>                    </execution>                </executions>            </plugin>            <plugin>                <groupId>org.apache.maven.plugins</groupId>                <artifactId>maven-compiler-plugin</artifactId>                <configuration>                    <encoding>UTF-8</encoding>                    <source>${java.version}</source>                    <target>${java.version}</target>                </configuration>            </plugin>            <plugin>                <groupId>org.apache.maven.plugins</groupId>                <artifactId>maven-surefire-plugin</artifactId>                <version>2.19.1</version>                <configuration>                    <excludes>                        <exclude>com.fitforger.FitForgerBackendApplicationTests</exclude>                    </excludes>                    <skip>${surefire.skip}</skip>                </configuration>            </plugin>            <plugin>                <groupId>org.apache.maven.plugins</groupId>                <artifactId>maven-failsafe-plugin</artifactId>                <version>2.19.1</version>                <configuration>                    <includes>                        <include>com.fitforger.FitForgerBackendApplicationTests</include>                    </includes>                </configuration>                <executions>                    <execution>                        <goals>                            <goal>integration-test</goal>                            <goal>verify</goal>                        </goals>                    </execution>                </executions>            </plugin>        </plugins>    </pluginManagement></build

答案1

小编典典

通过执行以下操作解决了OP问题,

这看起来与您所面临的相似。你可以尝试一下吗

<plugin>   <groupId>org.springframework.boot</groupId>   <artifactId>spring-boot-maven-plugin</artifactId>   <configuration>        <classifier>exec</classifier>   </configuration> </plugin>

Eclipse-java.lang.ClassNotFoundException

Eclipse-java.lang.ClassNotFoundException

尝试从Eclipse中启动JUnit-Test时,出现“ ClassNotFoundException”。从控制台运行“
MVN测试”时,一切正常。另外,Eclipse中没有报告任何问题。

我的项目结构如下:

  • 父项目(pom包装)
    • Web项目(战争包装-我的JUnit测试在这里)
    • Flex项目
    • 配置项目

编辑:如何找不到该类?这是一个简单的HelloWorld-Application,没有特殊的库。

这是我的JUnit的运行配置:
替代文本http://www.walkner.biz/_temp/runco​​nfig.png


Testclass(但正如我所说;它也不适用于简单的HelloWorld …):

import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import biz.prognoserechnung.domain.User;
import biz.prognoserechnung.domain.UserRepository;
import biz.prognoserechnung.domain.hibernate.UserHibernateDao;

public class UserDaoTest {
/**
 * the applicationcontext.
 */
private ApplicationContext ctx = null;

/**
 * the user itself.
 */
private User record = null;

/**
 * Interface for the user.
 */
private UserRepository dao = null;

@Before
public void setUp() throws Exception {
String[] paths = { "WEB-INF/applicationContext.xml" };
ctx = new ClassPathXmlApplicationContext(paths);
dao = (UserHibernateDao) ctx.getBean("userRepository");
}

@After
public void tearDown() throws Exception {
dao = null;
}

@Test
public final void testIsUser() throws Exception {
Assert.assertTrue(dao.isUser("John","Doe"));
}

@Test
    public final void testIsNoUser() throws Exception {
    Assert.assertFalse(dao.isUser("not","existing"));
        Assert.assertFalse(dao.isUser(null,null));
        Assert.assertFalse(dao.isUser("",""));
    }
}

java – Maven exec插件ClassNotFoundException

java – Maven exec插件ClassNotFoundException

我正在使用Maven exec插件从命令行运行 java应用程序,命令为mvn exec:java.我已经在pom.xml中指定了主类以及相关的依赖项.
<groupId>com.example.MyApp</groupId>
<artifactId>MyApp</artifactId>
<version>1.0.0</version>
<build>
  <plugins>
     <plugin>
       <groupId>org.codehaus.mojo</groupId>
       <artifactId>exec-maven-plugin</artifactId>
       <version>1.2.1</version>
       <executions>
         <execution>
           <goals>
             <goal>java</goal>
          </goals>
         </execution>
       </executions>
       <configuration>
          <mainClass>com.example.myclass</mainClass>
          <arguments>
            <argument>configFile</argument>
            <argument>properties</argument>
          </arguments>
       </configuration>
     </plugin>

我还指定了一些依赖…

<dependencies>
<dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.17</version>
    <type>jar</type>
</dependency>
<dependency>
    <groupId>com.example.MyLibrary</groupId>
    <artifactId>MyLibrary</artifactId>
    <version>1.0.0</version>
</dependency>

MyApp程序读取一个配置文件,该文件作为命令行参数传入.配置文件包含位于MyLibrary中的类的名称.所以该类可以是com.mypackage.driver.MyClass,它位于MyLibrary中,它是上面列出的MyApp jar的依赖项.
但是,当我尝试运行它时,我得到一个ClassNotFoundException …

—-更新
我正在使用系统类加载器来加载在MyApp程序的命令行中传入的类

ClassLoader loader = ClassLoader.getSystemClassLoader();

我认为这是导致问题,因为它正在寻找默认类路径上不包含依赖项的类.

我在这里做错了什么提示?

解决方法

你还在寻找这个问题的答案吗?我有完全相同的问题,最后想出来了.

您需要在配置中添加includePluginDependencies,以使插件搜索主类的依赖项:

<configuration>
  <includePluginDependencies>true</includePluginDependencies>
  <mainClass>com.example.myclass</mainClass>
  <arguments>
    <argument>configFile</argument>
    <argument>properties</argument>
  </arguments>
</configuration>

见:http://mojo.codehaus.org/exec-maven-plugin/java-mojo.html#includePluginDependencies

java.lang.ClassNotFoundException

java.lang.ClassNotFoundException

当你用Eclipse或者MyEclipse运行java web项目时,发现连接数据库失败,出现提示java.lang.ClassNotFoundException,你确定你的jar包添加了,那么很有可能是你项目的本地lib没有添加,方法如下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点击finish按钮就完成了

再试一下就成功了

java.lang.ClassNotFoundException android eclipse maven osx

java.lang.ClassNotFoundException android eclipse maven osx

我正在尝试将maven实现到现有的 android项目中.
我是通过上下文菜单>完成的.配置>转换为Maven项目.一切似乎都没问题,没有警告或错误.
但是当我尝试运行应用程序时(就像之前一样)我得到:
12-31 10:16:57.423: E/AndroidRuntime(14242): java.lang.RuntimeException:
Unable to instantiate activity ComponentInfo{xxx/xxx.MainActivity}: 
java.lang.classNotFoundException: xxx.MainActivity

我已经遵循了有关实现m2e的所有说明,一切看起来都应该有效.如果我没有将项目转换为maven项目,那么app运行正常.

我失败的任何建议?

这就是我的pom.xml的样子:http://pastebin.com/ByXA0BP4

解决方法

这花了我很多时间来解决,这是OP的答案引导我.

为项目启用Maven后,您需要禁用“允许源文件夹的输出文件夹”

脚步:

项目属性 – > Java构建路径 – >来源标签 – >取消“允许源文件夹的输出文件夹” – >单击确定

我还注意到我在控制台中收到了以下消息,这导致我失去了一些假领导的兔子:

trouble writing output: already prepared

今天关于maven surefire验证java.lang.ClassNotFoundExceptionmaven surefire报错的讲解已经结束,谢谢您的阅读,如果想了解更多关于Eclipse-java.lang.ClassNotFoundException、java – Maven exec插件ClassNotFoundException、java.lang.ClassNotFoundException、java.lang.ClassNotFoundException android eclipse maven osx的相关知识,请在本站搜索。

本文标签: