ハマログ

株式会社イーツー・インフォの社員ブログ

実行可能jar の プロパティファイルを外部に置く

背景

実行可能jarの設定などを記述したプロパティファイルを
開発時と本番時で分けて利用したいと思う場面はよくあることかと思います
MANIFEST.MF の Class-Path: にプロパティファイルを配置する
ディレクトリへのパスを記述すればよいようでしたが
はまったのでメモしておきます

要点

相対パスでは認識してもらいえない

自分が試した限りは、相対パスでは認識して貰えませんでした

パスの最後に “/” を付ける

こちらを参考にそうしました

http://www.coderanch.com/t/385714/java/java/Class-Path-manifest-picking-properties

例 MANIFEST.MF

例えばこんな感じです

Manifest-Version: 1.0
Class-Path: /path/to/prop-dir/
Build-Jdk: 1.7.0_17
Built-By: who
Created-By: Apache Maven
Main-Class: org.springframework.batch.core.launch.support.CommandLineJ
 obRunner
Archiver-Version: Plexus Archiver

/path/to/prop-dir ディレクトリの下に
あなたが読み込ませたいプロパティファイルを配置します

このMANIFEST.MF を同梱した jar を実行すると
それが参照されます

試した環境

$  cat /etc/redhat-release
CentOS release 6.3 (Final)
$ java -version
java version "1.7.0_17"
Java(TM) SE Runtime Environment (build 1.7.0_17-b02)
Java HotSpot(TM) 64-Bit Server VM (build 23.7-b01, mixed mode)

I hope this helps.


桑原 光昭   桑原 光昭   2013年5月24日


関連記事

eclipseではまってしまったこと

きっかけ そもそもの始まりはjavaをアップデートしようと思ったのがきっかけでご…

ORA-28001 the password has expiredとの戦い

こんにちは、かねこです。 ローカルのOracleが突然起動しなくなりました。 エ…

PlantUML&AtomでらくらくUML

ドキュメントが嫌いです。男はコードで殴り合うべきだと思うのですがどうでしょうか?…


← 前の投稿

次の投稿 →