以上就是给各位分享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报错)
- 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报错)
当我尝试为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中启动JUnit-Test时,出现“ ClassNotFoundException”。从控制台运行“
MVN测试”时,一切正常。另外,Eclipse中没有报告任何问题。
我的项目结构如下:
- 父项目(pom包装)
- Web项目(战争包装-我的JUnit测试在这里)
- Flex项目
- 配置项目
编辑:如何找不到该类?这是一个简单的HelloWorld-Application,没有特殊的库。
这是我的JUnit的运行配置:
替代文本http://www.walkner.biz/_temp/runconfig.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
<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
当你用Eclipse或者MyEclipse运行java web项目时,发现连接数据库失败,出现提示java.lang.ClassNotFoundException,你确定你的jar包添加了,那么很有可能是你项目的本地lib没有添加,方法如下
点击finish按钮就完成了
再试一下就成功了
java.lang.ClassNotFoundException android eclipse maven osx
我是通过上下文菜单>完成的.配置>转换为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
解决方法
为项目启用Maven后,您需要禁用“允许源文件夹的输出文件夹”
脚步:
项目属性 – > Java构建路径 – >来源标签 – >取消“允许源文件夹的输出文件夹” – >单击确定
我还注意到我在控制台中收到了以下消息,这导致我失去了一些假领导的兔子:
trouble writing output: already prepared
今天关于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的相关知识,请在本站搜索。
本文标签: