0
0

More than 3 years have passed since last update.

jarファイルをjdbcドライバも含めて作成する

Last updated at Posted at 2021-08-04

概要

jdbcドライバも含めたjarファイルを作成する方法。
ここでは、Sample.javaというファイルと、sample-jdbc-1.0.0.jarとsample002-jdbc-1.0.0.jarというjdbcドライバを使う例を書く。

Classファイル生成

まずはclassファイルを作成する。
ドライバは:でつなぐ。windowsの場合は;でつなぐらしい。(未確認)

$ javac -classpath "./sample-jdbc-1.0.0.jar:./sample002-jdbc-1.0.0.jar" Sample.java

実行

$ java -cp ".:./sample-jdbc-1.0.0.jar:./sample002-jdbc-1.0.0.jar" Sample

jarファイル作成

以下コマンドでjarファイルを作成する。

$ jar cvf Sample.jar *.class

jarの中身を見てみるとこんな感じ。このまま実行するとエラーになるので、MANIFEST.MFに追記をする必要がある。

$ jar tvf Sample.jar
     0 Wed Aug 04 09:47:44 JST 2021 META-INF/
    66 Wed Aug 04 09:47:44 JST 2021 META-INF/MANIFEST.MF
  2559 Wed Aug 04 00:56:48 JST 2021 Sample.class

MANIFESTファイルに追記

jarファイルを解凍する。

$ jar xvf Sample.jar
  created: META-INF/
 inflated: META-INF/MANIFEST.MF
 inflated: Sample.class

解凍すると、META-INF/MANIFEST.MFというファイルがあるので、Main-Classと、jdbcドライバを使う場合はClass-Pathを追記する。jdbcドライバが複数ある場合は、スペース区切りで定義する。

META-INF/MANIFEST.MF
Manifest-Version: 1.0
Created-By: 13.0.2 (Oracle Corporation)
+Main-Class: Sample
+Class-Path: sample-jdbc-1.0.0.jar sample002-jdbc-1.0.0.jar

再度jarファイルの作成

編集したMANIFESTファイルとjdbcドライバをjarにまとめる。

$ jar cvfm Sample.jar META-INF/MANIFEST.MF *.class sample-jdbc-1.0.0.jar sample002-jdbc-1.0.0.jar
added manifest
adding: Sample.class(in = 2559) (out= 1505)(deflated 41%)
adding: sample-jdbc-1.0.0.jar(in = 8394004) (out= 7238099)(deflated 13%)

実行

これで実行可能となる。

$ java -jar Sample.jar Sample

javadocを作る場合

ソースコード中に埋めたコメントを使ってリファレンスマニュアルを自動生成することができる。
以下コマンドを実行すると、docというディレクトリが作成され、その中にマニュアルが作成される。

$ javadoc -d doc Sample.java

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0