与运行的gradle构建Tomcat碧玉任务(JSPC) [英] Running tomcat jasper task (jspc) with gradle build
问题描述
我试图编译使用gradle这个范围内JSPC我们的JSP文件,但我得到一个例外。
I'm trying to compile our jsp files using jspc within gradle but am getting an exception.
下面是相关的部分的gradle
Here is the pertinent gradle section
//tomcatHome is defined in gradle.properties
ant.tomcatHome = "${tomcatHome}"
ant.webAppDir = "${webAppDir}"
ant.importBuild 'jspc.xml'
test.dependsOn jspc
而jspc.xml蚂蚁文件
And the jspc.xml ant file
<?xml version="1.0"?>
<project name="jspc" basedir="." default="jspc">
<!-- Import tasks from Tomcat -->
<import file="${tomcatHome}/bin/catalina-tasks.xml" />
<target name="jspc">
<jasper validateXml="false" uriroot="${webAppDir}" />
</target>
</project>
在仓库部分:
repositories {
mavenRepo urls: 'http://repository.jboss.org/nexus/content/groups/public-jboss'
mavenRepo urls: 'http://oss.sonatype.org/content/repositories/sourceforge-releases'
mavenRepo urls: 'http://google-gson.googlecode.com/svn/mavenrepo'
mavenCentral()
}
依赖关系部分:
dependencies {
springVersion = '3.0.4.RELEASE'
securityVersion = '3.0.5.RELEASE'
//Compile time local dependencies
compile fileTree(dir: 'staticLib', include: '*.jar')
//Compile time but not included dependencies
providedCompile group: 'javax.servlet', name: 'servlet-api', version:'2.5'
providedCompile group: 'javax.servlet', name: 'jstl', version: '1.1.2'
providedCompile group: 'taglibs', name: 'standard', version: '1.1.2'
//Compile time remote dependencies
compile group: 'com.google.code.gson', name:'gson', version: '1.7.1'
compile group: 'com.google.visualization', name: 'visualization-datasource', version: '1.0.2'
compile group: 'com.ibm.icu', name:'icu4j', version: '4.6.1'
compile group: 'commons-codec', name: 'commons-codec', version: '1.4'
compile group: 'commons-collections', name: 'commons-collections', version: '3.2.1'
compile group: 'commons-dbcp', name: 'commons-dbcp', version: '1.4'
compile group: 'commons-io', name: 'commons-io', version: '1.4'
compile group: 'commons-lang', name: 'commons-lang', version: '2.6'
compile group: 'commons-logging', name: 'commons-logging', version: '1.1.1'
compile group: 'commons-pool', name: 'commons-pool', version: '1.5.5'
compile group: 'javax.inject', name: 'javax.inject', version: '1'
compile group: 'javax.servlet', name: 'jstl', version: '1.2'
compile group: 'joda-time', name: 'joda-time', version: '1.6.2'
compile group: 'log4j', name: 'log4j', version: '1.2.15'
compile group: 'mysql', name: 'mysql-connector-java', version: '5.1.15'
compile group: 'net.sf.ehcache', name: 'ehcache-core', version: '2.4.0'
compile group: 'net.sf.ofx4j', name: 'ofx4j', version: '1.4'
compile group: 'org.codehaus.jackson', name: 'jackson-mapper-asl', version: '1.7.2'
compile group: 'org.hibernate', name: 'hibernate-core', version: '3.6.2.Final'
compile group: 'org.hibernate', name: 'hibernate-validator', version: '4.1.0.Final'
compile group: 'org.ostermiller', name: 'utils', version: '1.07.00'
compile group: 'org.springframework', name: 'spring-aop', version: springVersion
compile group: 'org.springframework', name: 'spring-asm', version: springVersion
compile group: 'org.springframework', name: 'spring-aspects', version: springVersion
compile group: 'org.springframework', name: 'spring-beans', version: springVersion
compile group: 'org.springframework', name: 'spring-context', version: springVersion
compile group: 'org.springframework', name: 'spring-core', version: springVersion
compile group: 'org.springframework', name: 'spring-expression', version: springVersion
compile group: 'org.springframework', name: 'spring-instrument', version: springVersion
compile group: 'org.springframework', name: 'spring-jdbc', version: springVersion
compile group: 'org.springframework', name: 'spring-jms', version: springVersion
compile group: 'org.springframework', name: 'spring-orm', version: springVersion
compile group: 'org.springframework', name: 'spring-oxm', version: springVersion
compile group: 'org.springframework', name: 'spring-tx', version: springVersion
compile group: 'org.springframework', name: 'spring-web', version: springVersion
compile group: 'org.springframework', name: 'spring-webmvc', version: springVersion
compile group: 'org.springframework.security', name: 'spring-security-acl', version: securityVersion
compile group: 'org.springframework.security', name: 'spring-security-aspects', version: securityVersion
compile group: 'org.springframework.security', name: 'spring-security-cas-client', version: securityVersion
compile group: 'org.springframework.security', name: 'spring-security-config', version: securityVersion
compile group: 'org.springframework.security', name: 'spring-security-core', version: securityVersion
compile group: 'org.springframework.security', name: 'spring-security-ldap', version: securityVersion
compile group: 'org.springframework.security', name: 'spring-security-taglibs', version: securityVersion
compile group: 'org.springframework.security', name: 'spring-security-web', version: securityVersion
compile group: 'uk.com.robust-it', name: 'cloning', version: '1.7.4'
//Runtime dependencies
runtime group: 'commons-fileupload', name: 'commons-fileupload', version: '1.2.2'
runtime group: 'javassist', name: 'javassist', version: '3.9.0.GA'
runtime group: 'javax.mail', name: 'mail', version: '1.4'
runtime group: 'org.codehaus.jackson', name: 'jackson-mapper-asl', version: '1.7.4'
runtime group: 'org.codehaus.jackson', name: 'jackson-core-asl', version: '1.7.4'
runtime group: 'org.slf4j', name: 'slf4j-api', version: '1.6.1'
runtime group: 'org.slf4j', name: 'slf4j-log4j12', version: '1.6.1'
//Test dependencies
testCompile group: 'cglib', name: 'cglib-nodep', version: '2.2'
testCompile group: 'junit', name: 'junit', version: '4.8.2'
testCompile group: 'org.mockito', name: 'mockito-all', version: '1.8.5'
testCompile group: 'org.springframework', name: 'spring-test', version: springVersion
}
唯一的例外是:
原因:文件:myfile.jsp(1,1)的绝对URI:的 http://java.sun.com/jsp/jstl/core 不能在web.xml或部署该应用程序的jar文件来解决
Cause: file:myfile.jsp(1,1) The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application
任何想法?
推荐答案
卡塔利娜-tasks.xml
从Tomcat的斌
目录中您可以使用包括类 org.apache.jasper.JspC
而不是Tomcat的JAR文件。如果缺少了你的JSP编译的库您可以轻松地将它们添加到配置碧玉
。
Instead of using catalina-tasks.xml
from Tomcat's bin
directory you can use the Tomcat JAR file that includes the class org.apache.jasper.JspC
instead. If there are any libraries missing for your JSP compilation you can easily add them to the configuration jasper
.
configurations {
jasper
}
repositories {
mavenCentral()
}
dependencies {
jasper 'org.apache.tomcat:jasper:6.0.33',
'javax.servlet:jstl:1.1.2',
'taglibs:standard:1.1.2'
}
test.doLast {
ant.taskdef(classname: 'org.apache.jasper.JspC', name: 'jasper', classpath: configurations.jasper.asPath)
ant.jasper(validateXml: false, uriRoot: webAppDir, outputDir: "$buildDir/jspc")
}
这篇关于与运行的gradle构建Tomcat碧玉任务(JSPC)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!