Sono un principiante al Spring Batch. Sto seguendo questo guide per creare un HelloWorld di Spring Batch. Nella classe con il metodo principale quando stavo cercando di ottenere contesto di applicazione utilizzando new ClassPathXmlApplicationContext("...")
, l'IDE mostra un messaggio di errore cheCome risolvere "Eccezione non gestita BeansException"
non gestita tipo di eccezione BeansException
non riesco a risolvere questo errore anche se ho un blocco catch che cattura tutti i tipi di eccezioni. Fare riferimento al blocco codice qui sotto:
public static void main(String args[]) {
try {
//error message appears here
AbstractApplicationContext applicationContext = new ClassPathXmlApplicationContext("simpleJob.xml");
JobParametersBuilder builder = new JobParametersBuilder();
builder.addString("Date", "12/02/2011");
jobLauncher.run(job, builder.toJobParameters());
JobExecution jobExecution = jobRepository.getLastJobExecution(job.getName(), builder.toJobParameters());
System.out.println(jobExecution.toString());
}
catch(Exception e) {
e.printStackTrace();
}
}
Poi, ho provato a risolverlo import org.springframework.beans.BeansException;
e cercato di prendere BeansException
. Sebbene l'errore BeansException non gestito sia stato risolto ma è apparso un altro messaggio di errore:
Nessuna eccezione del tipo BeansException può essere generata; un tipo di eccezione deve essere una sottoclasse di throwable
Fare riferimento al blocco di codice di seguito:
public static void main(String args[]) {
try {
AbstractApplicationContext applicationContext = new ClassPathXmlApplicationContext("simpleJob.xml");
JobParametersBuilder builder = new JobParametersBuilder();
builder.addString("Date", "12/02/2011");
jobLauncher.run(job, builder.toJobParameters());
JobExecution jobExecution = jobRepository.getLastJobExecution(job.getName(), builder.toJobParameters());
System.out.println(jobExecution.toString());
}
//error message appears here
catch(BeansException e) {
//do something
}
catch(Exception e) {
e.printStackTrace();
}
}
Qual è il modo corretto per risolvere questo errore?
Nota aggiuntiva: Non ho una mia classe chiamata BeansException.
Edit: Stack trace (procedere opzione errore):
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
No exception of type BeansException can be thrown; an exception type must be a subclass of Throwable
at SpringBatchHelloWorld.BatchLauncher.main(BatchLauncher.java:29)
Controllo, hai qualcosa di simile a 'primavera-core-4.2.4.RELEASE .jar' nel tuo percorso di classe. Ovviamente, deve esserci la tua versione reale invece di '4.2.4'. –
ho spring-batch-core-3.0.6.RELEASE.jar; primavera-batch infrastruttura 2.2.0.RELEASE.jar; primavera-context-4.2.4.RELEASE.jar; spring-fagioli-4.2.4.RELEASE.jar. Nota: posso importare solo org.springframework.beans.BeansException' dopo aver incluso spring-beans-4.2.4.RELEASE.jar – karansky
ho bisogno di includere spring-core-4.2.4.RELEASE.jar? – karansky