场景:
创建了一个Maven项目,编写一些含有业务逻辑的代码,然后打成jar包。暂且给它命名为myProject-8.16.jar吧。
在另一个Maven项目A中需要用到myProject-8.16.jar中的一些方法。
一般这种情况有两种方法:
1:将myProject-8.16.jar放到项目A的lib目录下,然后build path -> Add to build path。
2:将myProject-8.16.jar放到项目A的lib目录下,然后在项目A的pom.xml文件中添加依赖:
<dependency>
<groupId>com.myJar</groupId> <!-- 这个可以自定义 -->
<artifactId>myProject</artifactId>
<version>8.16</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/webapp/WEB-INF/lib/myProject-8.16.jar</systemPath>
</dependency>
以上两种的区别是:
第一种方式:将jar加载到引用库中,就是红色框框的这个。
第二种方式:将jar加载到Maven依赖中,就是黑色框框的这个。
说说我遇到的情况:
采用第一种方式:一旦修改了jar项目中的代码,打成jar包替换到线上项目lib下,项目启动报错(我是坐着操作的,或许我姿势不对,可能应该站着、蹲着,趴着或闭着眼睛......)。把jar放到本地项目A的lib下,添加到依赖库,重新打包编译,在线上重新部署。着实有点麻烦。。。
采用第二种方式:一旦修改了jar项目中的代码,打成jar包后直接替换到线上项目lib下,重启项目就好了。着实有点爽。。。
总之,第二种方式应该是最佳选择(在Maven项目中)。
各位客官,觉得哪里有问题或不足之处,请动动贵手评论区留言,在下感激涕零。