Skip to content

Instantly share code, notes, and snippets.

@ksomemo
Last active August 29, 2015 14:06
Show Gist options
  • Save ksomemo/403f72494f1ce2e93ed3 to your computer and use it in GitHub Desktop.
Save ksomemo/403f72494f1ce2e93ed3 to your computer and use it in GitHub Desktop.
Eclipse と シェル・Windowsバッチでの実行の違い
mkdir jar
cd jar
copy ..\Manifest.txt .\
xcopy /S ..\classes .\
xcopy /S ..\bin .\
jar cvfm xxx.jar Manifest.txt .\

プロジェクト設定

srcディレクトリ設定

  • 設定されたディレクトリ配下がコンパイル対象になる
  • 設定されたディレクトリは、コンパイル対象にに含まれない
  • jp.co.xxx のjpを対象とすると、パッケージとしてはcoから始まるものが登録されている
  • よって、パッケージがおかしくなる

コンパイル設定

  • srcディレクトリをコンパイルした際に生成されるclassファイルの格納先を決める(bin dir)
  • 下記のクラスディレクトリと同一に扱いたいがそれはできない
  • 格納先は、クラスパスに含まれなくなるためである
  • よってjarファイルを作成するときは、dirとクラスディレクトリ、その他ファイルをマージする必要がある

クラスディレクトリ設定

  • 設定されたディレクトリ配下が使用できる対象になる
  • 設定されたディレクトリは、パッケージ名に含まれない
  • org.apache.xxx のorgを対象とすると、パッケージとしてはapacheから始まるものが登録されている
  • よって、パッケージを使えずエラーが発生する

jar作成

  • プロジェクト選択
  • メニューからエクスポート
  • JAVA・JARファイル作成
#!/bin/sh
# compile and exec
javac path/to/package/Class.java
java path.to.package.Class
# jar
jar cvfm create-jar-name.jar Manifest.txt include1.txt include2-dir include3.class
Manifest-Version: 1.0
Class-Path: .
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment