整体的项目结构是这样的,A项目是一个web项目,B项目也是一个web项目,B依赖于A项目,我们在maven编译的时候也报错:xxx程序包不存在
但是我们又能进到所谓的不存在的程序包里面。是因为有些IDE没法很智能的做到,直接去引用war里头的class,这个时候我们在打包war的时候,就要打包class的资源。解决方法如下
A项目的pom文件
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <configuration> <!--将class打包jar作为附件--> <attachClasses>true</attachClasses> <!--设置jar包名字,如果没有定义该名字,那么名字为classes 就是说可以不设置,默认是classes--> <classesClassifier>classes</classesClassifier> </configuration> </plugin>
具体的代码结构如下
B项目的pom文件,新增如下代码
<dependency> <groupId>com.devrapid</groupId> <artifactId>JDevRapid.WeiXin</artifactId> <version>1.0-SNAPSHOT</version> <type>jar</type> <classifier>classes</classifier> </dependency>
具体的代码结构如下
再编译的时候就不报错了~