0

私は と に精通していませJavaJDK.jar実行したいファイルとしてJavaプログラムがありますubuntu 12.04。私はこのコマンドを使用します:

java -jar SAStoSEP.jar

しかし、私はこのエラーメッセージを受け取ります:

Exception in thread "main" java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:616)
    at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
    at SAStoSeP.main(SAStoSeP.java:56)
    ... 5 more

このエラーはどういう意味ですか?

4

5 に答える 5

1

メソッドでは、メソッドの呼び出しは、JarRsrcLoader.main参照 (JarRsrcLoader.java:58) を使用して行われますSAStoSeP.main

そのメソッドの呼び出し中に、ArrayIndexOutOfBoundsExceptionスローされました (SAStoSeP.java:56)。この例外はInvocationTargetException.

メソッドjavadocから:

throws InvocationTargetException - 基になるメソッドが例外をスローした場合。

于 2013-10-20T08:37:13.287 に答える
0

これは、SAStoSeP の 56 行目 (メイン メソッド内) で、ArrayIndexOutOfBoundsException がスローされたことを意味します。

メイン メソッドはリフレクションを介して呼び出されたため、InvocationTargetException にラップされました。これが、スタック トレースが 2 つのセクションに分割されている理由です。

于 2013-10-20T08:37:03.233 に答える
0

これは独自のプロジェクトであるため、特定の例外がスローされる原因を特定することはできません。それにはソースコードを見る必要があります!!

これを解決する正しい方法は、製品のサポート担当者に問題の説明と回避方法を尋ねることです。まず、そのような一般的な例外をユーザーにスローするものは、間違いなくバグです。そして、製品を使用する権利のためにお金を支払った場合、信頼性とサポートに対する合理的な期待があります.

ただし、例外をスローしているメソッドと例外自体を考えると、SAStoSeP はいくつかのコマンドライン引数を期待していると思います。(不適切に記述されたメソッドは、をチェックせずmain(String[] args)にアクセスしようとする可能性があります。その結果、インデックス 0 が発生します。また、引数を指定しませんでした... ) したがって、そのコマンドの使用方法に関するドキュメントを確認してください。arg[0]args.lengthArrayIndexOutOfBounds

于 2013-10-20T08:51:58.983 に答える
0

エラーは一目瞭然です。SastoSep.java http://docs.oracle.com/javase/7/docs/api/java/lang/ArrayIndexOutOfBoundsException.htmlの 56 行目のコードを確認してください。

于 2013-10-20T08:38:57.113 に答える