spring boot实战之本地jar包引用示例
部分情况下无法通过maven仓库直接下载需要的jar包,只能讲jar包下载至本地来使用,spring boot框架内通过maven加载第三方jar包可以通过以下方式来实现(本地jar放在lib/目录下),项目会打包为jar包来运行。
1、添加maven依赖
<dependency> <groupId>org.ansj</groupId> <artifactId>ansj_seg</artifactId> <version>3.0</version> <scope>system</scope> <systemPath>${project.basedir}/lib/ansj_seg-3.0.jar</systemPath> </dependency>
- scope system指明是本地jar包
- systemPath指明本地jar包路径
经过以上配置,在eclipse内已可正常运行,但编译为jar包时会提示找不到相关的类,需要进行以下配置。
2、调整plugin参数
<plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.7</source> <target>1.7</target> <compilerArguments> <extdirs>${project.basedir}/lib</extdirs> </compilerArguments> </configuration> </plugin> </plugins>
重点是compilerArguments内的extdirs配置
3、调整resources配置
<resources> <resource> <directory>lib</directory> <targetPath>BOOT-INF/lib/</targetPath> <includes> <include>*/.jar</include> </includes> </resource> <resource> <directory>${project.basedir}/src/main/resources</directory> <targetPath>BOOT-INF/classes/</targetPath> </resource> </resources>
- directory lib配置的作用是指定lib目录下的jar包作为资源文件,在打包时一起copy至classes是目录下
- directory src/main/resources配置的作用是指明正常的java资源文件,不配置会被忽视
打包后的文件格式大概为:
BOOT-INF -- lib -- ansj_seg-3.0.jar -- classess -- application.properties
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
赞 (0)