最近、私はジェンキンでgradleを実行する新しいビルダーを実装しました。私たちのプロジェクトにはジャスパーレポートが含まれていますので、ジャスパーレポートapiによって提供されるantタスクを使ってジャスパーレポートをコンパイルするタスクを追加しました。GradleでJasperReportsをコンパイルするとサポートされていないバージョンのエラーが発生する
コンパイル時に問題はありませんが、予想通りに動作しますが、プロジェクトをサーバーにデプロイした後、実行時に次のエラーが発生します。
[8/3/17 14:38:53:340 EET] 000000f5 SystemOut O ERROR [14:38:53,333 - WebContainer : 0] (RunReportBean.java:100) - ****Throwable java.lang.UnsupportedClassVersionError: JVMCFRE003 bad major version; class=kybgeneldurum_1501049070032_205074, offset=6 at java.lang.ClassLoader.defineClassImpl(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:275) at net.sf.jasperreports.engine.util.JRClassLoader.loadClass(JRClassLoader.java:337) at net.sf.jasperreports.engine.util.JRClassLoader.loadClassFromBytes(JRClassLoader.java:238) at net.sf.jasperreports.engine.design.JRAbstractJavaCompiler.loadEvaluator(JRAbstractJavaCompiler.java:104) at net.sf.jasperreports.engine.design.JRAbstractCompiler.loadEvaluator(JRAbstractCompiler.java:358) at net.sf.jasperreports.engine.JasperCompileManager.getEvaluator(JasperCompileManager.java:381) at net.sf.jasperreports.engine.fill.JRFillDataset.createCalculator(JRFillDataset.java:467) at net.sf.jasperreports.engine.fill.BaseReportFiller.(BaseReportFiller.java:152) at net.sf.jasperreports.engine.fill.JRBaseFiller.(JRBaseFiller.java:239) at net.sf.jasperreports.engine.fill.JRVerticalFiller.(JRVerticalFiller.java:69) at net.sf.jasperreports.engine.fill.JRVerticalFiller.(JRVerticalFiller.java:57) at net.sf.jasperreports.engine.fill.JRFiller.createBandReportFiller(JRFiller.java:201) at net.sf.jasperreports.engine.fill.JRFiller.createReportFiller(JRFiller.java:216) at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:85) at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:456) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:863) at tr.gov.uyap.fonk.report.engine.impl.jasper.JasperReportEngine.runReport(JasperReportEngine.java:95)
websphere 8.5をJava 1.6の実行時に使用します。これは、私は「Javaの1.6.03」が、何も変わってないようにGradleのjavaの変更私は、Java 1.7.0_51で実行するように構成されたエラーのGradleを得た最初の時点でのjava -version出力
/opt/IBM/WebSphere/AppServer/java/bin/java -version java version "1.6.0" Java(TM) SE Runtime Environment (build pxa6460_26sr8fp2ifix-20141114_01(SR8 FP2+IV66608+IV66375+IX90155+IV66944)) IBM J9 VM (build 2.6, JRE 1.6.0 Linux amd64-64 Compressed References 20141114_222464 (JIT enabled, AOT enabled) J9VM - R26_Java626_SR8_20141114_1023_B222464 JIT - r11.b07_20141003_74578.01 GC - R26_Java626_SR8_20141114_1023_B222464_CMPRSS J9CL - 20141114_222464) JCL - 20141005_01
です。何か案が ?
典型的なワークフローでは、レポートを作成する開発者は、レポートをコンパイルして(レポートをプレビューし、レポートが正しく機能することを確認するために開発中)も担当します。レポートがマシン生成されていない限り、通常は別のプロセスを使用してレポートをコンパイルする必要はありません。 –
バイナリフォルダをコードリポジトリにコミットしません。だから私はジェンキンス構築プロセス中にレポートファイルをコンパイルする必要があります – mfidan
@mfidanジャスパーサーバーにレポートを展開するためにどのようなデプロイメントプロセスを使用しているか知りたいだけです。 – Nikhil