一、问题描述:
zhishengjie@bogon dubbo_pro % mvn clean install -Dmaven.test.skip=true
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] dubbo_pro [pom]
[INFO] dubbo_api [jar]
[INFO] dubbo_consumer [jar]
[INFO] dubbo_provider [jar]
[INFO]
[INFO] ------------------------< com.parent:dubbo_pro >------------------------
[INFO] Building dubbo_pro 0.0.1-SNAPSHOT [1/4]
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] --- maven-clean-plugin:3.1.0:clean (default-clean) @ dubbo_pro ---
[INFO]
[INFO] --- spring-boot-maven-plugin:2.5.4:repackage (repackage) @ dubbo_pro ---
[INFO]
[INFO] --- maven-install-plugin:2.5.2:install (default-install) @ dubbo_pro ---
[INFO] Installing /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/pom.xml to /Users/zhishengjie/workspace/repositoryManagement/publicRepository/com/parent/dubbo_pro/0.0.1-SNAPSHOT/dubbo_pro-0.0.1-SNAPSHOT.pom
[INFO]
[INFO] -------------------------< com.api:dubbo_api >--------------------------
[INFO] Building dubbo_api 0.0.1-SNAPSHOT [2/4]
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-clean-plugin:3.1.0:clean (default-clean) @ dubbo_api ---
[INFO]
[INFO] --- maven-resources-plugin:3.2.0:resources (default-resources) @ dubbo_api ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Using 'UTF-8' encoding to copy filtered properties files.
[INFO] Copying 1 resource
[INFO] Copying 0 resource
[INFO]
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ dubbo_api ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 3 source files to /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_api/target/classes
[INFO]
[INFO] --- maven-resources-plugin:3.2.0:testResources (default-testResources) @ dubbo_api ---
[INFO] Not copying test resources
[INFO]
[INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ dubbo_api ---
[INFO] Not compiling test sources
[INFO]
[INFO] --- maven-surefire-plugin:2.22.2:test (default-test) @ dubbo_api ---
[INFO] Tests are skipped.
[INFO]
[INFO] --- maven-jar-plugin:3.2.0:jar (default-jar) @ dubbo_api ---
[INFO] Building jar: /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_api/target/dubbo_api-0.0.1-SNAPSHOT.jar
[INFO]
[INFO] --- spring-boot-maven-plugin:2.5.4:repackage (repackage) @ dubbo_api ---
[INFO] Replacing main artifact with repackaged archive
[INFO]
[INFO] --- maven-install-plugin:2.5.2:install (default-install) @ dubbo_api ---
[INFO] Installing /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_api/target/dubbo_api-0.0.1-SNAPSHOT.jar to /Users/zhishengjie/workspace/repositoryManagement/publicRepository/com/api/dubbo_api/0.0.1-SNAPSHOT/dubbo_api-0.0.1-SNAPSHOT.jar
[INFO] Installing /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_api/pom.xml to /Users/zhishengjie/workspace/repositoryManagement/publicRepository/com/api/dubbo_api/0.0.1-SNAPSHOT/dubbo_api-0.0.1-SNAPSHOT.pom
[INFO]
[INFO] --------------------< com.consumer:dubbo_consumer >---------------------
[INFO] Building dubbo_consumer 0.0.1-SNAPSHOT [3/4]
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-clean-plugin:3.1.0:clean (default-clean) @ dubbo_consumer ---
[INFO] Deleting /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/target
[INFO]
[INFO] --- maven-resources-plugin:3.2.0:resources (default-resources) @ dubbo_consumer ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Using 'UTF-8' encoding to copy filtered properties files.
[INFO] Copying 2 resources
[INFO] Copying 1 resource
[INFO]
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ dubbo_consumer ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 4 source files to /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/target/classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/LocalUserService.java:[3,25] 程序包com.api.demo.pojo不存在
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/LocalUserService.java:[9,19] 找不到符号
符号: 类 User
位置: 接口 com.consumer.demo.service.LocalUserService
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/LocalUserService.java:[10,5] 找不到符号
符号: 类 User
位置: 接口 com.consumer.demo.service.LocalUserService
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/impl/LocalUserServiceImpl.java:[3,25] 程序包com.api.demo.pojo不存在
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/impl/LocalUserServiceImpl.java:[4,28] 程序包com.api.demo.service不存在
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/impl/LocalUserServiceImpl.java:[23,13] 找不到符号
符号: 类 UserService
位置: 类 com.consumer.demo.service.impl.LocalUserServiceImpl
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/impl/LocalUserServiceImpl.java:[25,26] 找不到符号
符号: 类 User
位置: 类 com.consumer.demo.service.impl.LocalUserServiceImpl
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/impl/LocalUserServiceImpl.java:[31,12] 找不到符号
符号: 类 User
位置: 类 com.consumer.demo.service.impl.LocalUserServiceImpl
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/controller/UserController.java:[3,25] 程序包com.api.demo.pojo不存在
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/controller/UserController.java:[16,12] 找不到符号
符号: 类 User
位置: 类 com.consumer.demo.controller.UserController
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/controller/UserController.java:[20,28] 找不到符号
符号: 类 User
位置: 类 com.consumer.demo.controller.UserController
[INFO] 11 errors
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary for dubbo_pro 0.0.1-SNAPSHOT:
[INFO]
[INFO] dubbo_pro .......................................... SUCCESS [ 1.460 s]
[INFO] dubbo_api .......................................... SUCCESS [ 2.187 s]
[INFO] dubbo_consumer ..................................... FAILURE [ 0.250 s]
[INFO] dubbo_provider ..................................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.217 s
[INFO] Finished at: 2021-09-08T17:16:57+08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project dubbo_consumer: Compilation failure: Compilation failure:
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/LocalUserService.java:[3,25] 程序包com.api.demo.pojo不存在
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/LocalUserService.java:[9,19] 找不到符号
[ERROR] 符号: 类 User
[ERROR] 位置: 接口 com.consumer.demo.service.LocalUserService
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/LocalUserService.java:[10,5] 找不到符号
[ERROR] 符号: 类 User
[ERROR] 位置: 接口 com.consumer.demo.service.LocalUserService
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/impl/LocalUserServiceImpl.java:[3,25] 程序包com.api.demo.pojo不存在
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/impl/LocalUserServiceImpl.java:[4,28] 程序包com.api.demo.service不存在
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/impl/LocalUserServiceImpl.java:[23,13] 找不到符号
[ERROR] 符号: 类 UserService
[ERROR] 位置: 类 com.consumer.demo.service.impl.LocalUserServiceImpl
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/impl/LocalUserServiceImpl.java:[25,26] 找不到符号
[ERROR] 符号: 类 User
[ERROR] 位置: 类 com.consumer.demo.service.impl.LocalUserServiceImpl
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/service/impl/LocalUserServiceImpl.java:[31,12] 找不到符号
[ERROR] 符号: 类 User
[ERROR] 位置: 类 com.consumer.demo.service.impl.LocalUserServiceImpl
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/controller/UserController.java:[3,25] 程序包com.api.demo.pojo不存在
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/controller/UserController.java:[16,12] 找不到符号
[ERROR] 符号: 类 User
[ERROR] 位置: 类 com.consumer.demo.controller.UserController
[ERROR] /Users/zhishengjie/workspace/IdeaProjects/dubbo_pro/dubbo_consumer/src/main/java/com/consumer/demo/controller/UserController.java:[20,28] 找不到符号
[ERROR] 符号: 类 User
[ERROR] 位置: 类 com.consumer.demo.controller.UserController
[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 <args> -rf :dubbo_consumer
这就很奇怪,com.api.demo.pojo是我自己创建的类,我都能找到,你为啥找不到???
二、解决办法:
归根结底还是springboot打包插件
的问题
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
用它打出来的jar,是不能被其他工程引用的,为什么呢?就是因为使用这个插件打出来的jar里的class文件是放在BOOT-INF/
这个目录下的
所以解决办法就是打包时把class文件打在根目录,修改pom文件中的springboot打包插件
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<!-- 新增如下-->
<configuration>
<classifier>execute</classifier>
</configuration>
</plugin>