2016-08-25 17 views
0

現在実行中のjarにある設定ファイルを編集したいとします。 このファイルを直接変更したり、外部からコピーする方法はありますか?外部ファイルを現在実行中のjarファイルにコピーする方法は?

+5

できません。 jarファイルは実行時に読み取り専用です。設定ファイルは外部に保存する必要がありますが、jarファイルにデフォルトファイルがあり、外部ファイルが指定されていない場合に使用したり、外部ファイルに定義されていない値を適用したりすることができます。 – Andreas

+0

答えはAndreasにありがとうございます。 – Satour

答えて

1

jarruntimeで実行されていますが、コメント内のAndreasのように変更することはできません。私はちょうどあなたがここでこれが必要かもしれない理由の可能性のある代替案を入れます。だからこの質問は未回答のページには現れません。

なぜですか?

jarが(それはそれは、JVMによって使用されている、である)が実行されている、ファイル(アーカイブ>>ファイル)は、オペレーティングシステムによってがロックされています。いずれかのファイルがロックされている(またはロックされているとマークされている)場合、変更することはできません。つまり、読み取り専用のファイルと同じです。

は、なぜあなたはこれを行うことが必要であるかもしれません。通常、人々はjarに書き込もうとする理由

理由は、彼らが(jarファイルを参照して)絶対/相対パスで使用するファイルをしたい、ということです。

我々はこのような場合にはどのようなオプションがありますか?

これはあなたの問題であれば、あなたはjarの場所にディレクトリを作成し、それを使用することができます。

jarC:\Users\<Something>\Desktop\testDir\の場合は、ここにディレクトリ「conf」(C:\Users\<Something>\Desktop\testDir\conf\)を作成します。このディレクトリにファイルを作成/作成し、コードから簡単に参照することができます(現在の作業ディレクトリのパスを参照)。

関連する問題