知识

1 报错 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile (default-compile) on project ly-item-interface: Compilation failure: Compilation failure:[ERROR] /D:/javacode/idea/leyou/ly-item/ly-item-in

您当前位置>主页 > 知识 > 软件开发 >

MAVEN INSTALL时报错 程序包不存在以及找不到类的情

发表时间:2020-07-05 09:57

文章来源:admin

浏览次数:

1 报错

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile (default-compile) on project ly-item-interface: Compilation failure: Compilation failure:
[ERROR] /D:/javacode/idea/leyou/ly-item/ly-item-interface/src/main/java/com/leyou/item/api/GoodsApi.java:[3,28] 程序包com.leyou.common.dto不存在
[ERROR] /D:/javacode/idea/leyou/ly-item/ly-item-interface/src/main/java/com/leyou/item/api/GoodsApi.java:[4,27] 程序包com.leyou.common.vo不存在
[ERROR] /D:/javacode/idea/leyou/ly-item/ly-item-interface/src/main/java/com/leyou/item/api/GoodsApi.java:[23,5] 找不到符号
[ERROR] 符号:   类 PageResult
[ERROR] 位置: 接口 com.leyou.item.api.GoodsApi
[ERROR] /D:/javacode/idea/leyou/ly-item/ly-item-interface/src/main/java/com/leyou/item/api/GoodsApi.java:[37,42] 找不到符号
[ERROR] 符号:   类 CartDTO
[ERROR] 位置: 接口 com.leyou.item.api.GoodsApi
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR] 
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <goals> -rf :ly-item-interface

Process finished with exit code 1
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

1.1 根本原因(以其中一个ERROR为例分析)

ly-item-interface: Compilation failure: Compilation failure:
[ERROR] com/leyou/item/api/GoodsApi.  程序包com.leyou.common.dto不存在
  • 1
  • 2

ly-item-interface在打包时要依赖com.leyou.common包 就很奇怪 明明这个包这个类都是存在的啊,为什么就是找不到??? 其次做了几项检查:

  • pom.xml依赖是否成功引入或者存在不存在单词拼写错误(一般情况不会有错啊)
  • common包中dto是否成功import (这么简单必然成功import了啊…)

2 解决办法

最终原因,其实就是没有依赖。。。原因就是spring-boot-maven-plugin 这个坑!!!用这个插件打包的Jar包可以直接运行,但是不可依赖!!!所以interface自始至终就没有依赖,自然会说找程序包不存在或者找不到类

最后修改pom.xml的依赖:

 <build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <classifier>execute</classifier>
            </configuration>
        </plugin>
    </plugins>
 </build>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

ok!

3 总结

一个微服务通常有两个子module,一般一个写实体类和接口一个写实现方法

建议

  • common类或者实体类或者被被依赖的类,打包插件配置为:
<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <phase>none</phase>
                    </execution>
                </executions>
                <configuration>
                    <classifier>execute</classifier>
                </configuration>
            </plugin>
        </plugins>
</build>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

<executions>
    <execution>
        <phase>none</phase>
    </execution>
</executions>
  • 1
  • 2
  • 3
  • 4
  • 5

是为了解决Unable to find main class的问题,当然,如果写了简单的main函数这几行可以不写~

  • 其他类或者微服务可以正常配置:
<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
</build>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

4 最后

在这里插入图片描述 一晚上将近三个小时,碰到打包时的各种奇葩问题(为什么老师一按install好好的,我就???),还好最后看到了BUILD SUCCESS,等待他打包的过程好紧张,就怕有错,哭辽~

版权声明:本文为sinat_38570489原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/sinat_38570489/article/details/89504048

相关项目查看更多