我试图使用命令'java -jar XXXX.jar‘运行我的spring引导项目,但是得到了以下错误:
错误:发生了JNI错误,请检查您的安装,并再次尝试异常线程"main“java.lang.NoClassDefFoundError: org/modelmapper/ModelMapper at java.lang.Class.getDeclaredMethods0(原生方法) at java.lang.Class.getDeclaredMethods0 at java.lang.Class.privateGetMethodRecursive(Class.java:3048) at java.lang.Class.getMethod0(Class.java:3018) at java.lang.Class.getMethod(Class.java:1784) at sun.launcher.LauncherHelpersun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526)的.validateMainClass(LauncherHelper.java:544)由: java.lang.ClassNotFoundException: org.modelmapper.ModelMapper at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) .
我使用modelmapper并以以下方式将其声明为bean:
@SpringBootApplication(exclude = {SecurityAutoConfiguration.class })
public class StartApplication {
@Bean
public ModelMapper modelMapper() {
return new ModelMapper();
}
public static void main(String[] args) {
SpringApplication.run(StartApplication.class, args);
}
}在pom中,我定义了以下成瘾:
<dependency>
<groupId>org.modelmapper</groupId>
<artifactId>modelmapper</artifactId>
<version>2.0.0</version>
</dependency>有什么问题吗?
发布于 2021-05-21 15:18:15
我通过执行以下步骤解决了这个问题:
Step1:添加ModelMapper库依赖项;
<dependency>
<groupId>org.modelmapper</groupId>
<artifactId>modelmapper</artifactId>
<version>2.4.3</version>
</dependency>Step2:在Spring配置中定义ModelMapper bean:
import org.modelmapper.ModelMapper;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
@SpringBootApplication
public class SpringBootAppDemo {
public static void main(String[] args) {
SpringApplication app = new SpringApplication(SpringBootAppDemo.class);
}
@Bean
public ModelMapper modelMapper() {
return new ModelMapper();
}
}Step3:注入和使用ModelMapper
实体类
@Entity
public class Student {
private Long id;
private String firstName;
private String lastName;
private int year;
}DTO类
public class StudentDto {
private String firstName;
private String lastName;
private int year;
}示例
import org.modelmapper.ModelMapper;
@Autowired
private ModelMapper modelMapper;
Student student = new Student(...);
ModelMapper modelMapper = new ModelMapper();
StudentDto studentDto = modelMapper.map(student, StudentDto.class);Step4:停止你的项目;
Step5:运行命令行mvn clean;
Step6:再次运行您的项目;
我希望这能帮上忙!!
https://stackoverflow.com/questions/54137299
复制相似问题