4

私はMavenプロジェクトを持っており、その中でスクリプト(Rで記述)を実行しようとしています。このスクリプトファイルもソースコードディレクトリに置きます。このスクリプトはまったく実行されていないことがわかりました。ただし、このスクリプトをjarファイルの外に移動すると、実行されます。誰かが理由を教えてくれますか?スクリプトを実行しながらjarファイルに入れるための解決策を教えてください。

どうもありがとう !

4

3 に答える 3

6

私は次のことをします:

  • ClassLoader.getResourceAsStream() でファイルの InputStream を取得します。
  • この InputStream を tmp dir に書き込みます
  • Runtime.getRuntime().execute(..) で実行します
于 2012-07-05T08:31:07.067 に答える
1

jarファイルからスクリプトを抽出する必要があります。

jar -xvf my.jar com/foo/my.script.sh
于 2012-07-05T07:56:06.367 に答える
1

jar内のファイルはファイルではなくなったため、実行するには、最初にどこかに抽出してから、外部の抽出されたファイルパスから実行する必要があります。

于 2012-07-05T07:50:54.420 に答える