由于项目要做阿里会员通,所以定制了taobao的sdk,需要在工程中手动引入,文件路径如下:
开发工具使用的idea,所以使用idea的配置引入jar包,配置如下:
但是工程打包的时候,依旧提示程序包com.taobao.api不存在,报错如下
刚开始是以为缓存的原因,但是清理缓存之后依旧没发解决,最后,决定修改pom文件,引用本地jar包,配置如下:
<dependency>
<groupId>com.taobao</groupId>
<artifactId>taobaoapi</artifactId>
<version>2.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/webapp/WEB-INF/lib/taobao-sdk-java-auto_1582030266166-20200218.jar</systemPath>
</dependency>
再次打包,发现完美解决
注意:本地jar包不会自动打包,所以修改打包配置,如下
<build>
<finalName>***</finalName>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptors>
<!-- 指定打包插件的配置文件位置 -->
<descriptor>src/main/assembly/assembly.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<!-- 打jar包时,排除xml和资源文件,因为会将这些文件打到conf目录下 -->
<excludes>
<exclude>**/*.properties</exclude>
<exclude>**/*.yml</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>src/main/webapp</directory>
<targetPath>/WEB-INF/lib/</targetPath>
<includes>
<include>**/*.jar</include>
</includes>
</resource>
</resources>
</build>