前言
最近在做项目时,用到Oracle包,因为这个包不能通过Maven引入,只能本地引入。但是打包时启动错误,查证后发现本地jar包没有打包进去,整了大半个小时给整好了,特此记录一下,以备用。
引入本地jar包
在 pom.xml 文件中的 dependencies 标签下添加如下代码:
<dependency>
<groupId>oracle.jdbc.driver.OracleDriver</groupId>
<artifactId>ojdbc7</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>D:/jar/ojdbc7.jar</systemPath>
</dependency>
systemPath 标签表示本地jar包绝对路径。
你也可以放在项目根目录下的 libs 目录下,例如:
<dependency>
<groupId>oracle.jdbc.driver.OracleDriver</groupId>
<artifactId>ojdbc7</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/libs/ojdbc7.jar</systemPath>
</dependency>
${project.basedir} 表示项目根目录。
scope几个选项说明:
- compile:默认的scope,运行期有效,需要打入包中
- provided:编译期有效,运行期不需要提供,不会打入包中
- runtime:编译不需要,在运行期有效,需要导入包中。
- test:测试需要,不会打入包中
- system:非本地仓库引入、存在系统的某个路径下的jar。
打包时将本地jar包添加进去
在 pom.xml 文件中的 build ➡ plugins 标签下添加如下代码:
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!--打包时允许添加本地jar包-->
<includeSystemScope>true</includeSystemScope>
</configuration>
</plugin>