PC端-中文轉拼音後續問題
阿新 • • 發佈:2018-11-17
目錄
起因
因為小鹹兒參與的專案還在持續開發,所以今天來總結一下中文轉拼音功能的後續問題。
新的問題
首先需要在pom.xml檔案中引入pinyin4j的jar包:
<dependency> <groupId>com.belerweb</groupId> <artifactId>pinyin4j</artifactId> <version>2.5.0</version> <scope>provided</scope> </dependency>
在功能完成之後,小鹹兒就上傳到SVN中,但是在之後重新下載程式碼,卻發現無法使用這個jar包,總是報錯。首先懷疑的是jar包的問題,它並沒有下載下來,在專案中找了找發現這個jar包是存在的,這個疑惑排除。
所以小鹹兒就又去pom檔案裡面看了看,發現自己的jar包引入的格式和其他的jar包不同,多了一行這樣的程式碼:
<scope>provided</scope>
小鹹兒去查了查了這是什麼意思,發現:
-
provided:
表明dependency由JDK或者容器提供,例如Servlet和一些Java EE APIs。這個scope只能作用在編譯和測試時 -
compile
預設的scope,表示dependency都可以在生命週期中使用。而且,這些dependencies會傳遞到依賴的專案中。適用於所有階段,會隨著專案一起釋出。 -
runtime
表示dependency不作用在編譯時,**但會作用在執行和測試時,**如JDBC驅動,適用執行和測試階段。 -
test
表示dependency作用在測試時,不作用在執行時。只在測試時使用,用於編譯和測試程式碼,不隨專案釋出。 -
system
跟provided相似,但是在系統中要以外部Jar包的形式提供,maven不會再dependency查詢它。
結果
發現問題所在之後,把那句話刪除後,預設的就是compile,所以完美的解決問題。