解決maven打包缺少依賴class xxx for user defined function to_pinyin failed to load問題
1. 問題報(bào)錯(cuò)
FAILED: ODPS-0130071:[1,8] Semantic analysis exception - class xxx for user defined function xxx failed to load.
Some dependencies are missing. Detail messages are: net/sourceforge/pinyin4j/format/exception/BadHanyuPinyinOutputFormatCombination
2.問題定位
(1) 打好的jar包解壓打開發(fā)現(xiàn)確實(shí)沒有發(fā)現(xiàn)依賴,定位問題到maven打jar包顯示缺少依賴
根據(jù)查找資料發(fā)現(xiàn),maven-shade-plugin提供了兩大基本功能:
- a.將依賴的jar包打包到當(dāng)前jar包(常規(guī)打包是不會(huì)將所依賴jar包打進(jìn)來的);
- b.對(duì)依賴的jar包進(jìn)行重命名(用于類的隔離);
3.問題解決方法
在pom.xml中添加plugin java編譯插件。
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.1.0</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<filters>
<filter>
<artifact>*:*</artifact>
<!-- 這里必須要填下面這段,否則報(bào)錯(cuò) -->
<excludes>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
</excludes>
</filter>
</filters>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<!-- 下面這里要填要運(yùn)行的類,否則會(huì)報(bào)錯(cuò) -->
<mainClass>xxx</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
提升MYSQL查詢效率的10個(gè)SQL語句優(yōu)化技巧
MySQL數(shù)據(jù)庫執(zhí)行效率對(duì)程序的執(zhí)行速度有很大的影響,有效的處理優(yōu)化數(shù)據(jù)庫是非常有用的。尤其是大量數(shù)據(jù)需要處理的時(shí)候2018-03-03
mysql installer community 8.0.12.0安裝圖文教程
這篇文章主要為大家詳細(xì)介紹了mysql installer community 8.0.12.0安裝圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-08-08
windows下mysql?8.0.27?安裝配置方法圖文教程
這篇文章主要為大家詳細(xì)介紹了windows下mysql?8.0.27?安裝配置方法圖文教程,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04
mysql隨機(jī)抽取一定數(shù)量的記錄實(shí)例講解
在本篇文章里小編給大家整理的是關(guān)于mysql隨機(jī)抽取一定數(shù)量的記錄實(shí)例相關(guān)知識(shí)點(diǎn),有需要的朋友們可以學(xué)習(xí)下。2019-09-09

