4

私は Jasperreports を何年も使用しており、多くのバージョンがリリースされています。

私の質問は: バージョン 4.0.2 を使用して Jasper に 2 つの単純なレポートがあります。iReport をバージョン 4.7.1 にアップグレードしようとしましたが、再度コンパイルしたところ、NullPointerException.

jasperreports をバージョン 4.7.1 にアップグレードしたところ、正常に動作するようになりました。

この種のエラーは、iReport のバージョンをアップグレードするときによく発生します。iReport がレポートを下位バージョンのリリースにコンパイルできないのはなぜですか? そのような互換性を維持するのはとても難しいですか?

誰かが以前にこの問題を抱えていましたか? プロジェクトで iReport と Jasperreports を常にアップグレードするリスクは何ですか?

4

1 に答える 1

4

「古い」Jasperが「新しい」レポートテンプレートを処理できないのは当然だと思います。iReportをアップグレードしないことで、これを回避することができます(1つのバージョンのみを使用している場合は、アップグレードする理由がないため)。

ただし、異なるバージョンのJasperReportsで実行されているレポートを維持する必要がある場合、iReportには下位互換モードがあり、[追加]->[オプション]->[一般]タブ->[互換性]からアクセスできます。

お役に立てれば。

私の経験から、問題が発生しておらず、新しいバージョンで提供される新機能が必要ない場合は、JasperReportsまたはiReportを常にアップグレードする必要はありません。「実行中のシステムには絶対に触れないでください。」

于 2012-11-29T12:01:25.113 に答える