使用gradle中的ant编译jsp文件时出错

时间:2015-02-03 18:28:00

标签: ant gradle build.gradle jasper-plugin

当我尝试执行自定义gradle任务来预编译jsp文件时,我收到错误。 我的任务看起来像:

task compile_jsp(dependsOn: 'compileJava') << { 
    //Define master classpath
    def masterpath = ant.path(id: 'master-classpath') {
        fileset(dir: "${rootDir}/build/libs"){
            include(name: '**.jar')
        }
        fileset(dir: sourceSets.main.output.classesDir) {
            include(name: '**/*.class')
        }
        fileset(dir: "${rootDir}/src/main"){
            include(name: '**/*.java')
        }
    }

    ant.taskdef(classname: 'org.apache.jasper.JspC', name: 'jasper', classpath: configurations.jasper.asPath + masterpath)
    ant.jasper(uriRoot: "${rootDir}/src/main/webapp/", outputDir: "${rootDir}/src/main/webapp/WEB-INF/" + "${compileJspOutputDir}/", webXmlFragment: "${rootDir}/src/main/webapp/WEB-INF/generated_web.xml", addWebXmlMappings: "true")
}

我得到的错误是:

The value for the useBean class attribute <class> is invalid.

我认为它与项目中的类位置有关,因为如果我定义sourceSets.main.output.classesDir就可以很好地完成任务:

sourceSets.main.output.classesDir = "${rootDir}/src/main/webapp/WEB-INF/classes"

否则,我得到上述错误。

有没有办法在没有更改类目录的情况下运行它?

0 个答案:

没有答案