Thursday, May 23, 2013

在Ubuntu 12.04 LTS中使用OpenJDK及Oracle Java讀取健保卡 - 3

本系列文章的重頭戲來了,因為openjdk和和oracle jdk雖然有99%以上的相似程式,但有些應用程式就限定要用oracle jdk,因此本文要來介紹此問題。
而在Ubuntu使用oracle jdk來讀取智慧卡最大的問題原先以為是讀卡機裝置權限的問題,在經過幾週的搜尋之後,終於發現到是pcsc函式庫路徑的問題,感謝OpenSC網站上的資料

首先將函式庫連結處理好。
$ locate libpcsclite.so
-------看看libpcsclite.so的實際檔案放在哪
-------以下以我的機器為例(Ubuntu 12.04 LTS 64bits)
$ sudo mkdir /usr/lib64
-> 建立此目錄的原因是Ubuntu不管是32位元或64位元都只有/usr/lib的資料夾
-> 而Oracle JDK 64位元版本只認/usr/lib64,故要建立如上資料夾
-> 但在Centos 64位元的機器上原本就有
-> 若是32位元的系統只要以下指令即可
$ sudo ln -s /lib/x86_64-linux-gnu/libpcsclite.so.1.0.0 /usr/lib/libpcsclite.so

接下來若要安裝Oracle JDK有兩種方式,其一是從官網中下載並手動設定。另一種方式則是使用ppa提供的自動安裝程式!在此介紹ppa的方法。


  • 首先移除所有openjdk套件
  • $ sudo apt-get purge openjdk*
    

  • 接下來加入ppa套件庫(ppa:webupd8team/java)
  • $ sudo add-apt-repository ppa:webupd8team/java
    $ sudo apt-get update
    $ sudo apt-get install oracle-java7-installer
    

花一點時間之後即可安裝完成!

測試程式下載

No comments:

Post a Comment