EClipse:
1、我们需要手工引入本地jar包
1.1 选中工程-->单击鼠标右键(选择如下图所示)
1.2 然后添加需要引入的本地jar包
1.3 点击apply后,点击ok按钮,就会在下图所示位置找到引入的本地jar包。
2、在下图所示位置创建lib文件夹
3、 将步骤1中引入的jar包拷贝到该lib目录下。
4、在工程的pom文件中,加上如下语句(需根据自己的jar包进行替换)
<dependency>
<groupId>com.sap</groupId>
<artifactId>sapjco3</artifactId>
<version>3.0.12</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/resources/lib/sapjco3.jar</systemPath>
</dependency>
5、重新打包,就会发现本地jar包已经被打包到该工程的发行包中。
在使用springboot-1.5.6.RELEASE 版本的时候,依靠以上方法并不能将jar包打进工程中,需要
在pom文件中加上如下代码:
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<includeSystemScope>true</includeSystemScope>
</configuration>
</plugin>
</plugins>
开发工具idea
1: 将项目打包成 可执行的jar文件
按照以前整合项目的套路,直接将第三种的jar添加项目lib中即可。我也是这么做的,在项目中新建lib文件夹,将第三放的jar copy进去。
2:依然dependency标签引入第三种jar,写法如下
scopre 写成system , systemPath : 指向jar所在的位置。 不要按照以前的套路,在libraries中添加进来了。
3: 按照上述步骤,ide开发部署是没有问题的。但是打包mvn clean package,第三方的jar,还是未能打进去,运行项目就会提示缺少jar文件。
4:在spring-boot-maven-plugin中configuration下的includeSystemScope属性指定为true即可了。
goal-repackage属性为true,因为项目是多模块的,不然打包后文件不能将依赖文件打包进去。
将项目打包成war包部署
1:首先修改项目的pom文件,打包类型jar=》war
2: 按照spring boot的官方文档,说只需要添加2中的依赖(scope是provided)。 其他网友也说要在web排除tomcat的依赖,并添加上tomcat-servlet-apide 依赖,以防万一加上吧,谁知道会出现什么事情呢。
3:打war包的时候,有时候会提示说没web.xml文件,加上下面的话明确告诉 没web.xml
4: 重点来了 设置maven-war-plugins插件,否则外部依赖无法打进war包