2

HelloWorld を作成している場合、HelloWorld と入力するだけで任意のディレクトリからプログラムを実行する方法はありますか? 同じように、Ant をセットアップしたら、任意のディレクトリから Ant を実行できますか?

詳細については、顧客向けに CLI ベースのツールキットを作成しています。それをコンパイルしてインストールし、ツールキット名を使用して実行させることができるかどうかを知りたいだけです。

4

3 に答える 3

9

いつでもシェル スクリプトを作成し、それを呼び出して、JARHelloWorldで実行することができます。java

chmod次に、スクリプトを実行可能にして、.xml ファイルのどこかに配置する必要があります$PATH

スクリプトは次のようになります。

#!/bin/bash
cd /path/to/helloworld
java -jar HelloWorld.jar "$@"

また

#!/bin/bash
java -jar /path/to/helloworld/HelloWorld.jar "$@"

あなたの正確な要件に応じて。

于 2013-02-27T14:15:27.350 に答える
2

問題の一般的な解決策は、別のランチャー アプリケーションを作成することです。これは、Java プログラムを実行する非 Java アプリケーションです。ランチャーは、C/C++ などのコンパイル可能な言語で記述し、ネイティブ実行可能ファイルにコンパイルできます。また、Unix shell、perl、python などのインタープリター言語で記述し、#!/path/to/interpreterランチャー ファイルの先頭に行を追加して実行可能フラグを設定することで実行可能にすることもできます。また、 launch4jjsmoothなど、プログラムのランチャーを生成できるユーティリティがいくつかあります。

于 2013-02-27T14:20:08.423 に答える
0

Linux (特に) では、/procファイルシステム ( proc(5)のマニュアル ページを参照) とそのbinfmt_misc (実際には の/proc/sys/fs/binfmt_misc/register疑似ファイルとその他の疑似ファイル) を使用して、またはファイルのハンドラーとして/proc/sys/fs/binfmt_misc/登録できます。詳細については、カーネル ソースのDocumentation/binfmt_misc.txtファイルを参照してください。java.class.jar

次に、実行可能ファイルは(または).jarによって解釈されますjavajexec

努力する価値があるかどうかはわかりません。Java プログラムを何らかのシェル スクリプトでラップする方がはるかに簡単であることがわかりました (実際に を使用する Linux システムはほとんどなくbinfmt_misc、顧客がそれを有効にするにはシステム管理者のスキルが必要になる場合があるため)。

于 2013-02-27T19:51:39.073 に答える