1

Java コードを生成する必要があるプロジェクトを開発しています。メイン メソッドで 65535 バイトの制限に問題が発生したとき、いくつかのテストを行っていました。生成されたファイルは次のようになります。

public class foo{
    public static void main(String[] args){
        //
        //7000 lines later
        //
    }
}

この方法でファイルを生成することで、私は賢いと思いました:

public class foo{
    public static void bar(){
        //
        //7000 lines later
        //
    }
    public static void main(String[] args){
        bar();
    }
}

しかし、すべてのメソッドに 65535 バイトの制限が適用されることがわかりました。

命令を複数のメソッドに「バッファリング」することで問題が解決するかどうかを知りたいです。Java ファイルのサイズに制限はありますか?

4

4 に答える 4

9

ファイルは任意のサイズにすることができますが、メソッドは 65535 バイトを超える長さにコンパイルすることはできません。

これを解決する唯一の方法は、

  • より小さなメソッドを使用してください。そのような大きなメソッドは判読できません。
  • コードを生成する場合は、複数のメソッドを作成します。
  • 情報をデータ ファイルまたはデータベースとして外部化します。
于 2012-10-05T15:23:31.223 に答える
2
于 2012-10-05T15:26:46.337 に答える
1

これは既知のバグ/機能リクエストです (公式の Java バグ トラッカー)

それでも、別の方法に分割する必要があります。

于 2012-10-05T15:24:40.577 に答える
1

hereに記載されているように、制限が存在し、それに達したと思います。

また、こちらのディスカッションもご覧ください。

于 2012-10-05T15:28:49.813 に答える