2017-07-25 13 views
1

実行中のリストをロードするためにスプリングバッチを実行しようとするとこのエラーが発生します。 java.lang.IllegalAccessErrorスプリングバッチを使用して実行リストを取得中

java.lang.IllegalAccessError: tried to access method org.springframework.batch.core.repository.dao.JdbcJobExecutionDao.getJobParameters(Ljava/lang/Long;)Lorg/springframework/batch/core/JobParameters; from class org.springframework.batch.admin.service.JdbcSearchableJobExecutionDao

は、いくつかの分析を行った後、私はJdbcJobExecutionDao春バッチの一部であり、)(getJobParametersの実装を有する保護された方法の一方として、JdbcSearchableJobExecutionDaoはJdbcJobExecutionDaoを延長したバネバッチ管理の一部であることを見出しました。

ので、Oracleのマニュアルに従って、それはないIllegalAccessErrorがあることを言う -

Thrown if an application attempts to access or modify a field or to call a method that it does not have access to.

Normally, this error is caught by the compiler; this error can only occur at run time if the definition of a class has incompatibly changed.

私はこれらのjar /クラスのコントロールを持っていない、理解していません。私はそれらを使用して間違って何かをしていますか?または両方のジャーに使用しているバージョンに問題があります。

春 - バッチ - バージョン2.2.0.RELEASE

春-一括管理 - バージョン1.3.0.BUILD-SNAPSHOT(も1.3.0.RELEASEで試してみました)サイトを参照のこと。

- java.lang.IllegalAccessError: tried to access method

https://github.com/spring-projects/spring-batch/blob/master/spring-batch-core/src/main/java/org/springframework/batch/core/repository/dao/JdbcJobExecutionDao.java

https://github.com/spring-projects/spring-batch-admin/blob/master/spring-batch-admin-manager/src/main/java/org/springframework/batch/admin/service/JdbcSearchableJobExecutionDao.java

答えて

0

だから、私は小道具を使用してこれを固定しましたバージョン。バネバッチ& spring-batch-adminの間のバージョンの不一致の問題でした。私はこの春のdocsサイトを参照し、推奨バージョンを試してみました!

http://docs.spring.io/spring-batch-admin/spring-batch-admin-manager/dependencies.html

だから、今私は

1.3.1.RELEASE(Spring-Batch-Admin)

2.2.7.RELEASE(Spring-Batch)

を使用していると私はもうjava.lang.IllegalAccessErrorを取得しておりません。これは非常に古いプロジェクトなので、他の機能が妨げられていないかどうかを確認する必要があります。

これは、同様の問題に直面している人に役立ちます。

関連する問題