首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >错误: JNI发生了错误- SpringBoot - java.lang.NoClassDefFoundError: org/modelmapper/ModelMapper

错误: JNI发生了错误- SpringBoot - java.lang.NoClassDefFoundError: org/modelmapper/ModelMapper
EN

Stack Overflow用户
提问于 2019-01-10 21:40:16
回答 1查看 2.4K关注 0票数 1

我试图使用命令'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:

代码语言:javascript
复制
@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中,我定义了以下成瘾:

代码语言:javascript
复制
<dependency>
    <groupId>org.modelmapper</groupId>
    <artifactId>modelmapper</artifactId>
    <version>2.0.0</version>
</dependency>

有什么问题吗?

EN

回答 1

Stack Overflow用户

发布于 2021-05-21 15:18:15

我通过执行以下步骤解决了这个问题:

Step1:添加ModelMapper库依赖项;

代码语言:javascript
复制
<dependency>
    <groupId>org.modelmapper</groupId>
    <artifactId>modelmapper</artifactId>
    <version>2.4.3</version>
</dependency>

Step2:在Spring配置中定义ModelMapper bean:

代码语言:javascript
复制
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

实体类

代码语言:javascript
复制
@Entity
public class Student {
    private Long id;
    private String firstName;
    private String lastName;
    private int year;
}

DTO类

代码语言:javascript
复制
public class StudentDto {
    private String firstName;
    private String lastName;
    private int year;
}

示例

代码语言:javascript
复制
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:再次运行您的项目;

我希望这能帮上忙!!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54137299

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档