723. 2024-06-14 18:19 采纳率: 25%
浏览 5

Springboot打包java -jar提示MyBatis映射器未找到和Spring Data JPA仓库未找到,我该怎么解决?

照着网上的教程用了Springboot做个数据大屏,在IDEA上面运行还好好的,打包后在本地终端java -jar就不行了,提示MyBatis映射器未找到和Spring Data JPA仓库未找到

2024-06-14 17:06:50.588  INFO 29408 --- [           main] com.example.demo.DemoApplication         : No active profile set, falling back to 1 default profile: "default"
2024-06-14 17:06:51.246  WARN 29408 --- [           main] o.m.s.mapper.ClassPathMapperScanner      : No MyBatis mapper was found in '[com.example.demo]' package. Please check your configuration.
2024-06-14 17:06:51.336  INFO 29408 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2024-06-14 17:06:51.358  INFO 29408 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 7 ms. Found 0 JPA repository interfaces.
2024-06-14 17:06:51.491  WARN 29408 --- [           main] o.m.s.mapper.ClassPathMapperScanner      : No MyBatis mapper was found in '[com.example.demo]' package. Please check your configuration.

找了一些博客和文章,也不知道是怎么回事

img


下面是我的entity写的一个代码:

package com.example.demo.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;

@Data
@TableName("chu_kou")
public class chukouEntity implements Serializable {
    private static final Long serialVersionUID = 1L;

    @TableField
    private String name;
    private float chul;
    private float chue;
}

我的dao层:

package com.example.demo.Dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.demo.entity.chukouEntity;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface chukouDao extends BaseMapper<chukouEntity> {
}

controller层:

package com.example.demo.contrlloer;

import com.example.demo.entity.chukouEntity;
import com.example.demo.service.chukouService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
@RequestMapping("areatopic")
public class chukouController {
    @Autowired
    private chukouService chukouService;

    @RequestMapping("list")
    public List<chukouEntity> list(){

        return chukouService.list();
    }
}

service层:

package com.example.demo.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.example.demo.entity.chukouEntity;

public interface chukouService extends IService<chukouEntity> {
}

service的impI:

package com.example.demo.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.example.demo.Dao.chukouDao;
import com.example.demo.entity.chukouEntity;
import com.example.demo.service.chukouService;
import org.springframework.stereotype.Service;

@Service("chukouService")
public class chukouServiceImpl extends ServiceImpl<chukouDao, chukouEntity> implements chukouService {
}

这是在IDEA运行后出来的一个文件

img

我认为是没有问题的,所以在想是不是打包的时候漏掉了?
我的pon.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.1</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>demo</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <version>2.7.1</version>
        </dependency>

        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.2.2</version>
        </dependency>

        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.1.2</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>provided</scope>
            <optional>true</optional>
            <version>2.7.18</version>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.33</version>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
            <version>1.18.30</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <version>2.7.1</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
            <version>2.7.18</version>
        </dependency>

        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-api</artifactId>
            <version>5.8.1</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-site-plugin</artifactId>
            <version>2.4</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>


        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
            <version>2.7.18</version>
        </dependency>

    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.6.0</version>
            </plugin>
        </plugins>
    </build>
    <packaging>jar</packaging>
</project>

换过了很多办法,什么清除重构还是跳过测试,都不行,我该怎么解决

  • 写回答

2条回答 默认 最新

  • 阿里嘎多学长 2024-06-14 18:25
    关注

    以下内容由CHATGPT及阿里嘎多学长共同生成、有用望采纳:


    根据您提供的信息,您在使用Spring Boot打包应用时遇到了MyBatis映射器和Spring Data JPA仓库未找到的问题。这通常与配置或打包时的类路径问题有关。以下是一些可能的解决方案:

    1. 确保MyBatis和Spring Data JPA的配置正确

      • 检查application.propertiesapplication.yml文件中是否有MyBatis和Spring Data JPA的配置。
      • 确保MyBatis的配置中指定了mapper文件的位置。
    2. 检查MyBatis Mapper接口的位置

      • 根据错误日志,MyBatis没有在com.example.demo包中找到任何mapper。请确保您的chukouDao接口位于正确的包路径下,并且IDEA没有报告任何错误。
    3. 检查Spring Data JPA Repository接口

      • 如果您使用Spring Data JPA,确保至少有一个继承了JpaRepository的接口存在。
    4. 检查IDEA的Maven配置

      • 有时候IDEA的Maven配置可能会导致打包问题。尝试重新导入Maven项目或更新项目依赖。
    5. 检查Maven插件配置

      • 确保pom.xml中的spring-boot-maven-plugin配置正确,特别是classifierlayout属性。
    6. 检查打包时是否包含了所有必需的资源

      • 使用mvn clean install命令重新打包,确保所有资源都被正确包含。
    7. 检查类加载器的行为

      • 在某些情况下,类加载器可能无法正确加载类。尝试使用-Xverify:none JVM参数来禁用类验证,看看是否有帮助。
    8. 检查Spring Boot的自动配置

      • 确保没有其他配置或代码覆盖了Spring Boot的自动配置。
    9. 检查依赖版本兼容性

      • 确保所有依赖项的版本兼容,特别是Spring Boot、MyBatis和MyBatis Plus。
    10. 查看IDEA的启动日志打包后的日志

      • 对比两者的日志,看看是否有差异,这可能会提供一些线索。

    如果上述步骤都无法解决问题,您可能需要提供更多的信息,例如application.propertiesapplication.yml的配置内容,以便进一步分析问题。

    至于参考资料,您可以查看以下链接:

    希望这些建议能帮助您解决问题。如果需要进一步的帮助,请提供更多的信息。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 6月14日

悬赏问题

  • ¥20 帮我解决这个项目,thank you各位程序员
  • ¥15 哪位能用ea软件做一下,有偿
  • ¥15 按要求编写汇编语言,并设计仿真电路图
  • ¥15 电脑软件运行次数如何统计
  • ¥15 同一个浏览器打开两个窗口怎么区分会话
  • ¥100 如何编写自己的emmc镜像
  • ¥15 starccm线性内聚力模型
  • ¥15 点云四边形凸包确定顶点
  • ¥15 关于redhat虚拟机系统新建卷的问题
  • ¥50 WRFDA读取风云四号A 星的GIIRS数据