1. 程式人生 > >PC端-中文轉拼音後續問題

PC端-中文轉拼音後續問題

目錄

起因

  因為小鹹兒參與的專案還在持續開發,所以今天來總結一下中文轉拼音功能的後續問題。

新的問題

  首先需要在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,所以完美的解決問題。