向类传递参数 spring 批处理作业时无法找到或加载主类

问题描述

public class demoRunner extends CommandLineJobRunner {
    public static void main(String[] args) throws Exception {
        // initialize fileappender here
        String logFile = args[args.length - 1].split("=")[1];
        DemoAppender.initializeAppender(logFile);
        CommandLineJobRunner.main(args);
    }
}

作为 VM 参数运行meta-inf/spring/student.xml student

学生是一份工作

demoRunner.java 的位置demoBatchJob\src\main\java\com\ncs\sma\runner\demoRunner.java

stduent.xml 的位置demoBatchJob\src\main\resources\meta-inf\spring\student.xml

例外:

错误:无法找到或加载主类 meta-inf.spring.student.xml 引起:java.lang.classNotFoundException:meta-inf.spring.student.xml

解决方法

尝试将其放在 META-INF 之外并添加以下 VM 参数 -

spring/student.xml

,

作为 VM 参数运行:META-INF/spring/student.xml student

您需要选择 demoRunner 作为运行的主类,并将输入文件和作业名称 META-INF/spring/student.xml student 作为“程序参数”传递,not 作为“VM 参数”传递.