私はアプリケーションメインクラスを実行する次のコードを持ち、次のコードを持つLauncherクラスを持つアプリケーションを開発しています。私は私のアプリケーションは、私は次のコマンドでバッチファイルを使用して、私のjarファイルを実行しようとした開始されていないことがわかりましたjar経由でアプリケーションメインクラスを起動
public class Launcher {
private static final String jarName = "LDC_MCM.jar";
private static final String mainClassWithPackageName = "com.ars.ldcmcm.Application";
public static void main(String[] args) {
String path = Configuration.getInstance().getAppFolder();
String cmd = "java -XX:+ForceTimeHighResolution -cp "+path+"\\"+jarName+" "+ mainClassWithPackageName;
System.out.println("invoking... \n"+cmd);
try {
Runtime.getRuntime().exec(cmd);
} catch (Exception e) {
e.printStackTrace();
}
}
}
。
java -jar LDC_MCM.jar
実行結果を以下に示します。
F:\SMC>java -Dfile.encoding=UTF-8 -jar LDC_MCM.jar
invoking...
java -XX:+ForceTimeHighResolution -cp F:\SMC\LDC_MCM.jar com.ars.ldcmcm.Application
実行はこのままです。アプリケーションは起動しません。誰かが私のアプリケーションの主な起動をせずにアプリケーションがなぜこのように残っているのかを伝えることができます。私は古いバージョンに自分のコードをロールバックして、アプリケーションコードに関連するものかどうかを確認しようとしました。
追加の詳細情報が必要な場合は、コメントを記入してください。 com.ars.ldcmcm.Applicationは、スイングアプリケーション用のフレームを設定します。
これ以上は試してみました。コマンドプロンプトからコマンドを直接実行しようとしましたが、以下のような例外があります。
F:\>java -XX:+ForceTimeHighResolution -cp F:\SMC\LDC_MCM.jar com.ars.ldcmcm.Application
Exception in thread "main" java.lang.NullPointerException
at com.ars.ldcmcm.Application.main(Application.java:283)
私はアプリケーションのメインをeclipse経由で実行しようとしたアプリケーションクラスに例外があるため、アプリケーションは期待どおりに起動しました。
com.ars.ldcmcm.Application'が行う '何ですか?またはあなたの期待される出力は何ですか? – TomN
これはアプリケーションに関連するすべてのスレッドをトリガーする主な機能を持つ、私のアプリケーションのパッケージです。 – Manesh
'Frame'を設定するか、出力を出力しますか?それが実行されていないことをどうお知りになりましたか?コマンドは問題ありません。ファイルパスが正しい場合は起動します。 – TomN