自己用maven打的包在别的项目中调用时找不到类,报“程序包不存在”的错误

问题描述:自己写一个微服务程序,用maven打包后在另一个工程中添加maven引用,但在调用引用包中的类时提示程序包不存在,无法编译通过。神奇的是在idea中代码自动补全能看到这个类,但却无法使用。

自己用maven打的包在别的项目中调用时找不到类,报“程序包不存在”的错误

 

解决方法:

导致这个问题的罪魁是 spring-boot-maven-plugin 插件,用这个插件打包的Jar包可以直接运行,但是不可依赖!!所以自然会说找程序包不存在或者找不到类,所以需要修改pom.xml中该插件的配置:

       <plugins>
         <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
               <classifier>execute</classifier>
            </configuration>
         </plugin>
      </plugins>

重新打包后问题解决!