Loading...

引言

有些项目的jar包写好之后,并没有发布到maven私服,直接发给另外开发,虽然这看起来很不专业,但是,也存在这种可能,最近公司让我对接一个接口,可是后端并不是Java,通过胶水语言使其可用。

导入本地jar包

scope

依赖范围 编译classpath 测试classpath 运行classpath 例子
compile Y Y Y logback
test - Y - Junit
provided Y Y - servlet-api
runtime - Y Y jdbc驱动
system Y Y - 存储在本地的jar包

目录结构如下

image.png

<dependency> <groupId>com.xxx</groupId> <artifactId>auth_api</artifactId> <version>1.0</version> <scope>system</scope> <systemPath>${project.basedir}/lib/auth_api.jar</systemPath> </dependency>

其中groupIdartifactId必须要有,但是值是什么关系不大。

此时就引入成功了,此时debug时候,是没有问题的,但是打包的时候,可能就有问题了。

打包配置

<build> <resources> <resource> <directory>${project.basedir}/lib</directory> <targetPath>BOOT-INF/lib/</targetPath> <includes> <include>**/*.jar</include> </includes> </resource> </resources> </build>

这样打包后,自定义的jar包就加载进来了。
image.png

结语

对于这样的需求,个人不太认可这样做,因为这样可移植性大大降低了,如果是公司内部,完全可以上传到私服中,直接这么搞不太合适吧。

如果觉得我的文章对你有用,请随意赞赏