2

次のコマンドを使用してプログラムを実行したい

java Main -host arg1 arg2

ただし、プロジェクトを別のパッケージで作成したため、いくつかの問題に直面しました。だから私はjarファイルを取得し、上記のキーワードからメインを実行できません。したがって、コマンドラインからjarファイルを呼び出す必要があります。

java -jar Main.jar arg1 arg2

しかし、それは私の仕様に反するので、私はそれを望んでいません。

助けてください。

仕様

必要なのはテキストのみのアプリケーションだけです。ネットワークに接続し、コマンドを使用してコマンド ラインからホスト (サーバー) またはクライアントとして実行する必要があります。

java BankApp -host PORT
java BankApp -client MACHINE PORT

それぞれホストまたはクライアントとして起動します。たとえば、ホストがポート 8888 のアロハで実行されていることがわかっている場合は、次のように接続します。

java BankApp -client aloha 8888

実行するために必要なことは次のとおりです。

java -jar C:\Users\UniversityofBristol\Desktop\BankApp\BankApp\dist BankApp.jar arg1 arg2

パブリック クラス BankApp {

public static void main(String[] args) throws IOException, ClassNotFoundException {


    String current = new java.io.File(".").getCanonicalPath();
    current = "java -jar " + current + "\\dist";
    current = "\"" + current + "\"";
    current = current + " BankApp.jar";
    System.out.println("Current dir:" + current);

    // Run a java app in a separate system process
    Process proc = Runtime.getRuntime().exec(current);
    // Then retreive the process output
    InputStream in = proc.getInputStream();
    InputStream err = proc.getErrorStream();

}

}

4

2 に答える 2

1

別のプロセスで .jar を実行する場合は、この回答を参照してください。

それ以外の場合は、プロジェクトに追加して (使用している IDE のプロジェクト プロパティを調べて)、他のライブラリとして使用することができます。

于 2013-07-06T13:55:28.940 に答える
0

jar をクラスパスに置くだけです。次のように言って、仕様を少し破ることができます。

java -cp bankapp.jar BankApp arg1 arg2

または $CLASSPATH 環境変数を設定します (これは見苦しく、スクリプトの外で実際に行うことはありませんが、機能します)。

export CLASSPATH=path/to/your/jar
java BankApp arg1 arg2

ネタバレ

于 2013-07-06T13:53:48.127 に答える