【Java入門】ライブラリの使い方(作成方法やおすすめ一覧も解説)

こんにちは!フリーランスの長野です。

Javaのライブラリって使っていますか?ライブラリを使うと、いつも同じ処理を記述する手間が省けたり、一からコーディングする手間を省くことができて便利です。

そこでこの記事では、Javaのライブラリについて

  • ライブラリとは?
  • おすすめのライブラリ一覧
  • ライブラリの使い方

という基本的な内容から、

  • ライブラリを作成する方法

など応用的な内容についても解説していきます。今回はJavaのライブラリについて、わかりやすく解説します!

ライブラリとは

ライブラリとは、よく使う複数のプログラムを再利用できるようにひとまとまりにしたものです。Javaではクラスライブラリとも言います。

JavaではライブラリをJARファイル(拡張子が.jar)で提供することが多いです。JARファイルはコンパイルの際に作成されるclassファイルを一つに集めて圧縮したファイルです。またこのJARファイルは自分で作ることもできます。

おすすめのライブラリ一覧

Javaはありとあらゆる分野で利用されていますが、それぞれの分野で利用して便利なライブラリが無償で用意されています。用途ごとにみていきましょう!

画像処理

OpenCV
pen Source Computer Vision Libraryの略で、インテルが公開・開発したオープンソースの画像処理ライブラリ
画像処理・画像解析および機械学習を行うことができる/ 詳細はこちら

C/C++で書かれたプログラムをJavaでも使うことができます。

csvの読み込み・出力

OrangeSignal CSV
日本産のCSVライブラリです。JDK1.6以上で利用できます。CSVテキストへのアクセスだけでなく、ZIPファイル内のCSVファイルにもアクセスできる高機能なライブラリです。詳細はこちら

Super CSV
JDK1.5以上で利用可能です。/ 詳細はこちら

opencsv
opencsv。JDK1.5以上で利用可能です。/ 詳細はこちら

Apache POI
Excel2003形式である「.xls」とExcel2007形式である。「.xlsx」の両方のタイプのエクセルファイルを扱うことができます。/ 詳細はこちら

ExCella
簡潔な記述でExcelを操作することが可能。Excelのバージョン違いにも対応。/ 詳細はこちら

JSON

Jackson
クラスオブジェクトとJSONデータとの変換に便利。/ 詳細はこちら

など

JSON In Java
Map型やList型のオブジェクトとJSONデータとを変換する場合に便利。/ 詳細はこちら

JavaでJSONデータを扱う方法については、こちらで詳しく解説していますので、ぜひ参考にしてください。

【Java】JSONデータを標準API、Jackson、JSON in Javaで扱う方法
更新日 : 2019年4月24日

構文解析

JavaParser
Javaのソースコードを構文解析するライブラリ。Java8以降で使用可能。/ 詳細はこちら

Eclipse JDT
Eclipseのプラグインライブラリ。Java Development Toolsの略/ 詳細はこちら

java.util.Scannerクラス
Java5から追加された正規表現を使った構文解析が可能なテキストスキャナ文章/ 

ssh

JSch
最もメジャーなライブラリ。/ 詳細はこちら

グラフィック

JavaFX
Swingに代わるGUIライブラリ。Java7以降に標準で搭載。/ 詳細はこちら

JavaFxについてはこちらで詳しく解説していますので、ぜひ参考にしてください。

【Java入門】GUIの開発フレームワークまとめ(Swing、JavaFx、AWT)
更新日 : 2019年4月8日

ライブラリの使い方

それではライブラリの使い方について説明していきます。ライブラリを使う方法については以下のとおりいくつか方法があります。

  • システムフォルダに配置(インストール)
  • コマンドでclasspathを指定
  • Eclipseでビルド・パスに追加

それぞれの方法について説明します!

インストール

JavaのJDKやJREが標準でインストールされるフォルダにライブラリのJARファイルを配置する方法について説明します。ここではWindowsにJREをインストールした際に生成される以下のフォルダを例に説明します。

C:\Program Files\Java\jre1.8.0_181

このフォルダ内の「lib\ext」ファルダにJARファイルを配置します。この方法ではコンパイル時や実行時にclasspathを指定する必要はありません。JSONデータをライブラリJSON in Javaで扱う方法をサンプルに使って確認しましょう。

引用元:MVN repository https://mvnrepository.com/artifact/org.json/json

こちらからライブラリを入手します。

Versionを選択して、”bundle”ボタンを押すとjarファイルのダウンロードが開始されます。ここではダウンロードされた「json-20180130.jar」を「C:\Program Files\Java\jre1.8.0_181\lib\ext」に配置します。

コマンド

で表示されたバージョンが保存されているフォルダの「lib\ext」フォルダにJARファイルを配置します。

実行結果:

コマンド

javacコマンド、javaコマンドのclasspathオプションを使ってコンパイル、実行する方法について説明します。

classpathオプションを使ってJARファイルのパスを指定します。実行時にclasspathオプションを使ってJARファイルのパスを指定する場合はパス指定の後ろに「;」(セミコロン)が必要ですので注意しましょう!

classpathについてはこちらで詳しく解説していますので、ぜひ参考にしてください。

【Java入門】classpathを指定して実行する方法(確認の方法も解説)
更新日 : 2019年4月8日

Eclipse

それではEclipseという開発環境を使ってclasspathを指定する方法を説明します。Eclipseのプロジェクト名を右クリックして、「ビルド・パス」→「外部アーカイブの追加」を選択することでJARファイルを登録し、classpathを追加することができます。

「参照ライブラリー」にJARファイルが追加されます。

これでライブラリが使えるようになります。開発環境Eclipseの使い方については、こちらで詳しく解説していますので、ぜひ参考にしてください。

【Java初心者必見!】Javaの開発環境を構築する方法を解説!
更新日 : 2019年5月7日

ライブラリを作成する方法

自分でライブラリを作成することができます。コマンドを使う方法とEclipseを使う方法をご紹介します。

コマンド

例えばHelloフォルダ内のクラスファイルをjarファイルにまとめて、そのjarファイルとMain.javaファイルを使って処理するということをやってみましょう。

Hello/Hello1.java:

Hello/Hello2.java:

この2つのファイルをMain.javaファイルから使用します。

Main.java:

コンパイルしたら、HelloフォルダでHello1.classとHello2.classファイルをHello.jarファイルに圧縮します。

Hello.jarファイルとMain.javaファイルを使ってコンパイルをします。Hello.jarファイルを指定するのに-classpathオプションを使います。

ただし注意すべき点が1点あります。実行する際にはjarファイルの指定後に「;」(セミコロン)が必要です。

jarコマンドの使い方についてはこちらで詳しく解説していますので、ぜひ参考にしてください。

【Java入門】jarファイルの作成、解凍、実行について解説
更新日 : 2019年4月25日

Eclipse

EclipseでJARファイルを作成する方法について説明します。

プロジェクト名を右クリックし、「エクスポート」を選択クリックします。「Java」→「JARファイル」を選択し、「次へ」ボタンをクリックします。

「エクスポート先を選択してください」にJARファイルのパスを指定し、「次へ」ボタンをクリックします。

「次へ」ボタンをクリックします。

「内容のシール」でラジオボタン「JARをシールする」を選択クリックし、「アプリケーションのエントリー・ポイントのクラスを指定:」の「参照」ボタンをクリックします。

メインクラスを選択して「OK」ボタンをクリックしたあと、「完了」ボタンをクリックしたらJARファイルが生成されます。

まとめ

今回はJavaのライブラリについて解説してきましたが、いかがでしたか?Javaでは用途によって様々なライブラリが用意されています。

また、自分でライブラリを作成して流用することもできます。ライブラリを活用して楽にプログラムが作成できるように、この記事を何度も参考にして下さいね!

LINEで送る
Pocket

最短でエンジニアを目指すなら侍エンジニア塾

cta_under_bnr

侍エンジニア塾は業界で初めてマンツーマンレッスンを始めたプログラミングスクールです。これまでの指導実績は16,000名を超え、未経験から数多くのエンジニアを輩出しています。

あなたの目的に合わせてカリキュラムを作成し、現役エンジニア講師が専属であなたの学習をサポートするため効率よく学習を進めることができますよ。

無理な勧誘などは一切ありません。まずは無料体験レッスンを受講ください。

無料体験レッスンの詳細はこちら

書いた人

長野 透

長野 透

熊本在住のフリープログラマ兼ライターです。C/C++/C#、Java、Python、HTML/CSS、PHPを使ってプログラミングをしています。専門は画像処理で最近は機械学習、ディープラーニングにはまっています。幅広くやってきた経験を活かしてポイントをわかりやすくお伝えしようと思います。
お問合せはこちらでも受け付けています。
[email protected]

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説